Timeline for Can app developers control the way their app handles iCloud save conflicts?
Current License: CC BY-SA 4.0
8 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Jul 2, 2023 at 5:14 | comment | added | MichaelR | Sure @malhal. Here is an Apple example that includes conflict resolution: Synchronizing Documents in the iCloud Environment. The Apple Documentation Archive is always a good place to start. You may also find some examples on GitHub. | |
Jul 2, 2023 at 1:09 | comment | added | malhal | Do you know of any open source conflict resolution UI for iOS? | |
Jul 1, 2023 at 23:10 | comment | added | MichaelR |
Hi @malhal, yes the implementations are different but the mechanisms to be notified of and handle conflicts do exist in iOS. NSFilePresenter for notification, and NSFileVersion for conflict status and versions.
|
|
Jul 1, 2023 at 17:09 | comment | added | malhal |
It's called NSDocumentRevisionsController and gets created by NSDocument _handleConflictsForDocument: . I find it unbelievable there is no equivalent for UIDocument so iOS users in 3rd party apps will just unwillingly keep working on conflicted documents. Pages/Shortcuts on iOS have custom implementations.
|
|
Jun 30, 2023 at 1:10 | comment | added | MichaelR | Apps are able to detect an iCloud file is out of date and request an updated copy. However the delay of notification of changes and the delay of an updated copy appearing are outside the control of the developer. So with good connectivity, notifications and updates can occur quite quickly (a couple of seconds in my experience). | |
Jun 29, 2023 at 21:50 | comment | added | iconoclast | "Syncing will always be vulnerable to delay" because iCloud will always be slow in how it handles synchronization? Or are you suggesting that it's literally impossible to make synchronization fast, quite apart from whatever limitations iCloud forces on us? | |
Sep 27, 2021 at 21:46 | vote | accept | iconoclast | ||
Sep 24, 2021 at 21:55 | history | answered | MichaelR | CC BY-SA 4.0 |