Inquiry About Background Permission Issue in My App

I am writing to address a concern regarding the background permission functionality in my app, which is critical for ensuring user safety as they navigate various terrains. This feature also enables users to smoothly record their navigation tracks for review after their activities. Recently, I've noticed that this functionality is not working as seamlessly as before.

Additionally, I observed that the app is not categorized under 'health and fitness'—could reclassifying it improve background activity? Before I delve into a detailed code review, I wanted to check if this issue might be related to sync or settings on the App Store side, such as permission configurations, app updates, or other related factors. Or, is it more likely an issue stemming from the app’s codebase?

The App Store categorization will have no effect on what happens to your app on the device when running in the background.

So, the issue is likely in your codebase, in how your app is implementing the background activity. I can't comment on what the issue could be as "not working as seamlessly as before" does not give any hints about what is not working as expected.

What I can say, though, is issues usually surface when the app code tries to swim against the flow of how iOS handles background activity. If your app's main background activity is location updates, usually the best way to handle this is to start location updates and let it run, rather than trying to juggle functionalities with an expectation of making how location updates work "better".

You may also want to look at the new CoreLocation APIs which are more resilient in various cases of app termination.

The new API is described at Receive location updates in the background WWDC24 Session What’s new in location authorization explains this new API and the latest improvements, along with some example code.

Perhaps that might be more suitable for your use case.


Argun Tekant /  DTS Engineer / Core Technologies

Inquiry About Background Permission Issue in My App
 
 
Q