As a developer, the repeated "App using background location" prompts are ludicrous.
Say my app sends emergency alerts. Life or death stuff.
Every time an alert gets sent to a user, the alert's relevance is decided based on the user's current location.
If the user is in Denver, and a Tornado is touching down in Texas, the use likely doesn't want that alert. It's irrelevant. The only way to determine this relevance is by pinging the user's location and comparing it to the alert location.
If the app didn't do this, the user would get every alert nationwide and become annoyed.
This results in quite a few pings. All 100% honest. None stored.
Now, Apple shows user this ping history.
User has no idea the app is doing all this important work behind the scenes to prevent bombarding the user with alerts. They just see all these pings and panic.
What's worse? The app itself stores none of the location history in this instance, it discards all of it. Guess who stores the pings?
APPLE to show the history!
The one claiming to be the good guy, meanwhile putting your actual location data at risk by logging it.
So user sees "Only allow while using app", and naturally clicks it.
A major storm strikes, and the user isn't alerted because the alert cannot function without background location enabled.
What does user conclude? "This app spied on me (false), kept showing permission popups (Apple), then didn't work when it was supposed to (misled user by Apple). If I could give it less than 0 stars I would."
Say my app sends emergency alerts. Life or death stuff.
Every time an alert gets sent to a user, the alert's relevance is decided based on the user's current location.
If the user is in Denver, and a Tornado is touching down in Texas, the use likely doesn't want that alert. It's irrelevant. The only way to determine this relevance is by pinging the user's location and comparing it to the alert location.
If the app didn't do this, the user would get every alert nationwide and become annoyed.
This results in quite a few pings. All 100% honest. None stored.
Now, Apple shows user this ping history.
User has no idea the app is doing all this important work behind the scenes to prevent bombarding the user with alerts. They just see all these pings and panic.
What's worse? The app itself stores none of the location history in this instance, it discards all of it. Guess who stores the pings?
APPLE to show the history!
The one claiming to be the good guy, meanwhile putting your actual location data at risk by logging it.
So user sees "Only allow while using app", and naturally clicks it.
A major storm strikes, and the user isn't alerted because the alert cannot function without background location enabled.
What does user conclude? "This app spied on me (false), kept showing permission popups (Apple), then didn't work when it was supposed to (misled user by Apple). If I could give it less than 0 stars I would."