Archive for January 11, 2015

iCloud syncing in Account Tracker

January 11, 2015 Comments off

aticon57This post tries to explain some of the more common issues related to iCloud syncing in Account Tracker (Pro), together with workarounds where known.

Note that as of v6.4 (December 2020), the old (legacy) iCloud is provided for backwards compatibility only. If you are starting from scratch, please use iCloud Drive instead. To do so, disable syncing (if enabled), disable iCloud (in my app), then enable it again, choosing iCloud Drive.

In the rest of this post, references to iCloud also refer to iCloud Drive.

First an iCloud overview …

iCloud is basically “cloud” based storage tied to a single iTunes account. Apps can use it to share data between all devices belonging to that user. It cannot be used to share data between different users and that is why I introduced Dropbox support – see the Alternatives to iCloud section below.

When an app writes a file to iCloud, the operating system (iOS) takes care of copying this to “the cloud” and from there to other devices. Apps have no control over how long this takes but it is usually a few seconds to a minute or so.

Basic things to check

You should check that you are running the latest versions of my app and of iOS itself.

To use iCloud, each device needs to be signed in and using the same iTunes account. This is done in the main Settings app, under iCloud.

And for iCloud to work, you clearly need network access, otherwise files can’t be copied between devices. This can either be WiFi or mobile data (enabled in the main Settings app). Note that devices don’t have to be on the same network. They just need access to the Internet.

Finally you need a few MB of free space on iCloud – you can check this in the main Settings app, under iCloud.

Problems enabling syncing

Step 1 is where you enable syncing on your PRIMARY device. This copies a new sync file to iCloud. If using iCloud Drive, you can see this by running Apple’s Files app to browse iCloud Drive. There will be an Account Tracker folder with a single sync file (from your PRIMARY).

Step 2 is where you enable syncing on your SECONDARY device. If it doesn’t give you the option of becoming SECONDARY, this is because the file in step 1 has not appeared on that device. It should do eventually, but you need to give it time (a minute or so). Use the Files app (or Finder on a Mac), this time on your SECONDARY, and you should see the same file as your PRIMARY.

Once enabled on your SECONDARY, step 3 is simply the SECONDARY waiting for an initial sync from your PRIMARY. Make sure my app is running on your PRIMARY device, and eventually you should see the “found a new SECONDARY device” popup. Again this can take a while (a minute or so). If it doesn’t appear, use the Files app on your PRIMARY and you should now see two sync files.

Step 4 is simply you initiating the initial sync from PRIMARY to SECONDARY. Leave the app running on your PRIMARY.

Finally step 5 is when the SECONDARY confirms the initial sync is complete (a minute or so).

In total this setup process involves writing 3 files to iCloud, and all the delays in copying them to “the cloud” and on to all devices. I have no control over how long this takes, however the 5 step process usually takes a minute or so in total.

Syncing has stopped working?

Once syncing is enabled, changes are tracked and when you close the app (by pressing the Home button or command Q on a Mac), that device’s sync file is updated. This eventually makes it to your other devices and you will see the Sync flag on the settings tab.

Sometimes it might appear as if syncing has stopped working. Often this is just iCloud being slow.

However …

Recent versions of iOS seem to prevent iCloud copies from working if your device is low on power. On the iPhone there is a low power mode in the battery settings, you might want to turn this off. Note there doesn’t seem to be an equivalent option on the iPad, however copies definitely don’t happen if you are low on power.

Try disabling and re-enabling access to iCloud for my app. This is done in the main Settings app, under your iCloud settings.

If all else fails, try to reboot/restart you device(s) as this often fixes bugs in iOS.

Alternatives to iCloud

In August 2014 I added support for Dropbox, to allow users with different iTunes accounts to exchange and share data. And because I am directly copying files to and from Dropbox myself, it is a lot faster.

The only drawback with Dropbox is that they now charge you to use more than 3 devices (called Dropbox Plus). You can manage the devices that can use your Dropbox account from the Dropbox app (or log in to Dropbox from a web browser). This is especially important after upgrading a device as the old one might need removing.