Fix App Store background location mode

This commit is contained in:
FuelBoard Contributor
2026-10-01 07:44:40 +01:00
parent 7633a8df90
commit c7731d2b36
3 changed files with 21 additions and 14 deletions
+17 -11
View File
@@ -13,7 +13,9 @@ The two 2026-08-11 blockers are RESOLVED by P0 (live chain):
on Apple's network see real data.
- ~~Always-location risk~~ → **Always is requested only when the user enables
Alerts** (ProximityMonitor escalates WhenInUse → Always on alert opt-in).
Onboarding requests WhenInUse only.
Onboarding requests WhenInUse only. FuelBoard does **not** declare the
persistent real-time background location mode; optional alerts use
CoreLocation region monitoring/significant-change behaviour instead.
## StoreKit sandbox: verified working configuration and caveats
@@ -188,19 +190,23 @@ correct app/team association, and a matching Sandbox Apple Account.
> Prices are downloaded from the internet up to twice a day; the app filters
> 5/10/15-mile radii on-device and works offline from a bundled snapshot.
> Location is used to (a) rank stations by distance and (b) power the
> optional Alerts feature: when the user enables alerts, the app geofences
> the cheapest station in their radius and sends a notification when they
> approach it. Always-location is requested only when the user enables
> alerts. The app also provides a home-screen widget showing the current
> cheapest station nearby, and a price-history Trends chart for starred
> stations. All data is UK-wide (Fuel Finder covers England, Scotland, Wales
> and Northern Ireland); users outside the UK see an empty state explaining
> this.
> optional Alerts feature: when the user enables alerts, the app registers
> CoreLocation regions around the cheapest station in their radius and sends
> a notification when they approach it. FuelBoard does not use persistent
> real-time background location tracking; it relies on iOS region monitoring
> and significant-change behaviour for optional alerts. Always-location is
> requested only when the user enables alerts. The app also provides a
> home-screen widget showing the current cheapest station nearby, and a
> price-history Trends chart for starred stations. All data is UK-wide (Fuel
> Finder covers England, Scotland, Wales and Northern Ireland); users outside
> the UK see an empty state explaining this.
## Review risks (know before submitting)
- **Always-location (5.1.1)** — the #1 question. The feature is visible
(Alerts tab) and opt-in; the review notes above say so explicitly.
- **Always-location (5.1.1 / 2.5.4)** — the feature is visible (Alerts tab)
and opt-in; the app does not declare persistent background location mode,
and the review notes describe region monitoring/significant-change rather
than continuous tracking.
- **Reviewer outside the UK** — empty radius; mitigated by the empty-state
task above + review notes.
- **"Cheapest" claims (2.3.1)** — mitigated by the OGL/footnote task.
-1
View File
@@ -48,7 +48,6 @@
<key>UIBackgroundModes</key>
<array>
<string>fetch</string>
<string>location</string>
</array>
<key>UILaunchScreen</key>
<dict/>
+4 -2
View File
@@ -62,8 +62,10 @@ the govuk-API switch (BACKLOG P0). Findings below are ordered by severity.
### 6. Privacy / permissions — review for App Store
- `NSLocationWhenInUseUsageDescription` + `NSLocationAlwaysAndWhenInUseUsageDescription`
both present with clear copy; `UIBackgroundModes: location` justified by the
alert feature (geofenced cheapest-station notifications).
both present with clear copy. The app deliberately does not include the
`location` value in `UIBackgroundModes`; optional alerts use CoreLocation
region monitoring/significant-change behaviour rather than persistent
real-time background tracking.
- Location is the only sensitive permission requested. No contacts, photos,
camera, mic.
- No third-party SDKs → no SDK privacy manifests required.