I have a music app that can play in the background, using AVQueuePlayer. I'm in the process of adding support for CloudKit sync of the CoreData store, switching from NSPersistentContainer to NSPersistentCloudKitContainer.
The initial sync can be fairly large (10,000+ records), depending on how much the user has used the app. The issue I'm seeing is this:
✅ When the app is in the foreground, CloudKit sync uses a lot of CPU, nearly 100% for a long time (this is expected during the initial sync).
✅ If I AM NOT playing music, when I put the app in the background, CloudKit sync eventually stops syncing until I bring the app to the foreground again (this is also expected).
❌ If I AM playing music, when I put the app in the background, CloudKit never stops syncing, which leads the system to terminate the app after a certain amount of time due to high CPU usage.
Is there any way to pause the CloudKit sync when the app is in the background or is there any way to mitigate this?
Post
Replies
Boosts
Views
Activity
When I run Siri tests, the very first run requires I tap a button in the simulator to allow the test to use Siri on the device. Is there any way to automatically allow that so I can run completely headless tests?
I have a live music app to play live recordings from artists like the Grateful Dead and I'd like to add SiriKit support to it. When users refer to "albums" in my app, they would likely say "show", "recording", or "concert".
I've been testing INPlayMediaIntent and when I say "Play an album by the Grateful Dead in Live Music Archive", Siri returns the proper INMediaSearch with mediaType = album and artistName = Grateful Dead.
When I say "Play a show/recording by the Grateful Dead in Live Music Archive", Siri sets the mediaName = "Grateful Dead" and nothing else. concert is a bit better, but still not very useful.
Is it possible to configure synonyms for "album" so when Siri parses the speech, "show" / "concert" / "recording" will all resolve to "album"?