iOS devs using CloudKit:
Under what common conditions would a customer’s device not have a logged-in iCloud account, therefore making user-private CloudKit data usage unavailable?
And, if you have stats on this, roughly what percentage of your installed base does NOT have a logged-in iCloud account?
@marcoarment Our one big headache with CloudKit is that some users get into a weird ghost state, where iCloud is logged in but our app fails to connect - as if they aren't logged in (while other stock apps like Notes keep on syncing). The only fix we can think of is to log out of iCloud and back in, but if the user accumulated any content since last sync it all goes poof.
@slaven @marcoarment My advice to anyone who uses iCloud is to have a backup strategy in place _before_ you deploy any features that depend on it.
It's not a matter of if it will fail, but a matter of when. You will need those backups.
Tot, which uses NSUbiquitousKeyValueStore and an all-Apple iCloud stack, gets stuck in this state - our #1 support issue for customers. See: https://blog.iconfactory.com/2022/01/tots-got-your-back/
@chockenberry @slaven @marcoarment Same for users. I note some devs are telling folks to no longer use iCloud because it’s not reliable enough. I last year lost Soulver data because the doc didn’t sync during whatever happened in Jan. I still regularly have to restart bird to force a sync. Awful.
@chockenberry @slaven @marcoarment it’s true that iCloud Drive is not reliable. But it’s also outrageous that Apple hasn’t addressed this problem after all these years. Even worse, when iCloud Drive is down, Apple doesn’t acknowledge it in their server status web page.