Difference between revisions of "Branch Download"
Line 1: | Line 1: | ||
To support offline use cases, {{UBIK}} clients provide the possibility to bring data offline. It's achieved by downloading specified data branches in advance. | To support offline use cases, {{UBIK}} clients provide the possibility to bring data offline. It's achieved by downloading specified data branches in advance. | ||
+ | |||
+ | {{Hint|When a branch download is in progress, you can work with the offline data which is already available at the time of the download, but any communication with the content server will be scheduled after the branch download is finished.}} | ||
== Manual Download == | == Manual Download == | ||
Line 45: | Line 47: | ||
</tab> | </tab> | ||
</tabs> | </tabs> | ||
− | |||
− | |||
− | |||
− | |||
Line 69: | Line 67: | ||
{{Hint|All states are displayed for an entire branch. If the parent (direct or indirect) of a child object is syncing, that child object will display the same syncing state.}} | {{Hint|All states are displayed for an entire branch. If the parent (direct or indirect) of a child object is syncing, that child object will display the same syncing state.}} | ||
{{Hint|States are displayed in different priorities (syncing > pending > synced/failed). For example, if a child object is syncing and its parent is pending, the child object will "retain" its syncing state. But if their states are switched, the child object's pending state will be "overwritten" by the parent's syncing state. As for the synced/failed states, the more recent one is displayed.}} | {{Hint|States are displayed in different priorities (syncing > pending > synced/failed). For example, if a child object is syncing and its parent is pending, the child object will "retain" its syncing state. But if their states are switched, the child object's pending state will be "overwritten" by the parent's syncing state. As for the synced/failed states, the more recent one is displayed.}} | ||
+ | |||
== Background Download == | == Background Download == |
Latest revision as of 15:03, 26 September 2025
To support offline use cases, UBIK® clients provide the possibility to bring data offline. It's achieved by downloading specified data branches in advance.
Contents
Manual Download
When using the clients in non-offline sync modes, you can trigger a branch download from any content object. Depending on the clients and the XAML customizings, the UI for starting branch downloads might differ. Here's the default UI on different clients.BranchDownloadCommand
With the BranchDownloadCommand it is possible to download a branch manually.
- CheckOut CommandParameter (optional, defaults to false): Setting CheckOut to true provides the possibility to check out all downloaded content afterwards. Further information see in Exclusive Access Content (Client).
- SkipDialog CommandParameter (optional, defaults to false): Usually before downloading a branch a dialog is raised for the user to confirm or cancel the action. Setting SkipDialog to true provides the possibility to skip this dialog.
UWP
xmlns:example="using:UBIK.WinX.Controls"
Command="{Binding BranchDownloadCommand}">
<Button.CommandParameter>
<example:KeyValueList>
<example:KeyValueParameter Key="CheckOut" Value="False" />
</example:KeyValueList>
</Button.CommandParameter>
</Button>
Mobile(Xamarin)
xmlns:example="using:clr-namespace:UBIK.CPL.Classes;assembly=UBIK.CPL"
Command="{Binding BranchDownloadCommand}">
<Button.CommandParameter>
<example:KeyValueList>
<example:KeyValueParameter Key="CheckOut" Value="False" />
</example:KeyValueList>
</Button.CommandParameter>
</Button>
Automatic Download
Content objects can be classified in a way that their branches are automatically downloaded to the clients. Different configurations are supported so that the download can happen at different timing.
Configurable Offline Sync Levels
Content objects can be classified with the OFFLINE_SYNC_LEVEL_CLASSIFICATION to download a certain amount of children levels instead of infinite levels.
![]() | Sublevels to analyze If there are sublevels to analyze all the information on the children will be ignored. Here just the SyncLevel (in this case the ChildDepth) of the root object will be respected. |
Download States
To help users better understand what is going on during a branch download, the clients display different icons. The following examples are from the Mobile clients.
![]() | All states are displayed for an entire branch. If the parent (direct or indirect) of a child object is syncing, that child object will display the same syncing state. |
Background Download
On Android, UBIK® makes sure branch download tasks are not interrupted/suspended even when the device is locked or in sleep mode. However, this is only possible when UBIK® is excluded from the list of battery usage optimized apps.
To help you check and change this setting, UBIK® will try to lead you to the relevant settings page upon its first launch. But it's also a good idea to check the settings according to the specifications of your specific device models.