Recently I submitted an app in the app store that tracks the users location, send that to a server and that location is then visible on another service outside of the app store. The origional submition of the app with this feature was approved, then I made an update with some bug fixes and it was first rejected with this reasoning
Your app declares support for location in the UIBackgroundModes key in your Info.plist file but does not declare any features that require persistent location. Apps that declare support for location in the UIBackgroundModes key in your Info.plist file must have features that require persistent location.
Next Steps
Please revise your app to include features that require the persistent use of real-time location updates while the app is in the background. Please also add the following battery use disclaimer in your Application Description: "Continued use of GPS running in the background can dramatically decrease battery life."
so I added in Continued use of GPS running in the background can dramatically decrease battery life.
to my app description and also made a tester note as to what we use the background location for
Background Location is used for tracking the drivers location so that dispatch can view where the driver is.
I then resumbitted and got another rejection this time saying
Thank you for your resubmission. Based on the response in the review notes >section, your app uses background location mode for the purpose of tracking >employees only, which is not appropriate for the App Store.
Next Steps
Please revise your app to include additional features for your users that require the persistent use of real-time location updates while the app is in the background. For example, a map in the user interface that allows drivers to see their location.
If tracking your employees’s locations is your only intended use of background location, it would be more appropriate to distribute and sell your app as a custom B2B app, through the Volume Purchase Program.
This rejection makes no sense to me, there are hundreds of apps that do exactly what we are doing like Uber
or Lyft
. Their location gets sent to a server and drivers are visible on the map, only difference being is the map that they are visible on is not an app in the app store.
So my question is how do I get an app in the app store that racks the users location, sends that location to a server to allow the position being visible on another service of ours?
It seems that according to apple the only way to have it pass is to add a map so the user can visibly see their location, so thats what I did and they passed it