Google Play's April 2026 Permission Changes: Contacts, Location, Foreground Services
20 Jun 2026 · 5 min read · Erik van Kammen
Quick answer: On April 15, 2026, Google Play announced a policy update that reshaped how apps may request three common permissions. Apps that need contacts must use the Android Contact Picker instead of broad contacts access. Precise location should default to the least-privilege location button. And geofencing was removed as an approved foreground-service use case, so it must move to the Geofence API. Google set a compliance window of at least 30 days from the announcement. Here is each change, the manifest or API signal behind it, and how to fix it before submitting.
Permission policy updates are easy to miss because they do not change your code on their own. They change what Google Play will accept, and a build that passed last quarter can be rejected this quarter for a permission it has always requested. The April 15, 2026 update is one of those, and it touches permissions that a large share of apps use.
Apps that need access to a user's contacts must now use the Android Contact Picker, which lets the user choose specific contacts, rather than requesting broad READ_CONTACTS access. Broad contacts access is only acceptable when it is core to the app's purpose and justified.
For most apps, the fix is to drop the runtime contacts permission entirely and call the Contact Picker, which requires no permission at all. That both satisfies the policy and removes a sensitive permission from your manifest.
Google now points developers to the location button (a one-time, least-privilege share of precise location) as the recommended minimum scope for precise location. Continuous or background location is held to a higher bar and needs a formal declaration that explains why the app requires it.
If your app requests background location but its core feature does not require it, that mismatch is exactly what reviewers look for.
Geofencing was removed as an approved use case for foreground services. Apps that implemented geofencing through a foreground service must migrate to the Geofence API, which is the supported path. A foreground-service type that no longer maps to an approved use case is a rejection signal.
| Permission area | Old approach | New requirement (April 15, 2026) | What to do |
|---|---|---|---|
| Contacts | Request broad READ_CONTACTS |
Use the Android Contact Picker unless broad access is core and justified | Replace the permission with the Contact Picker |
| Precise location | Request precise location up front | Location button (least-privilege) is the recommended minimum | Use the location button; declare background use only if required |
| Foreground services | Geofencing allowed as a use case | Geofencing removed; use the Geofence API | Migrate geofencing off foreground services |
The April 15, 2026 announcement bundled several other items worth a calendar note: account transfers must use the official Play Console "Transfer ownership" workflow, news and magazine apps had a self-declaration deadline of May 27, 2026, real-money prediction-market apps had to enroll in a pilot by June 1, 2026, and the Health and Fitness policy was updated for Android 16 granular permissions and new high-sensitivity Health Connect data types. If any of those apply to you, check the dates in Play Console.
READ_CONTACTS is present, decide whether contacts are core to the app. If not, replace it with the Contact Picker and remove the permission.These changes are visible in the merged manifest and the foreground-service declarations, which makes them a good fit for a pre-submission scan. A scan can read the permissions and service types your compiled App Bundle actually declares, flag a READ_CONTACTS permission or a geofencing foreground-service type that no longer maps to an approved use case, and let you catch it in CI. For the broader picture, see app permissions and manifest compliance.
Not if broad contacts access is core to your app and you can justify it. For most apps, the cleaner path is to switch to the Android Contact Picker, which needs no permission and satisfies the policy.
Yes, if your app's core feature requires it and you complete the required declaration explaining why. Google now treats the least-privilege location button as the recommended default for precise location.
The Geofence API. Geofencing was removed as an approved foreground-service use case in the April 15, 2026 update, so geofencing logic should run through the Geofence API instead.
Google set a compliance window of at least 30 days from the April 15, 2026 announcement. Treat your next release as the deadline rather than waiting for an enforcement rejection.
Everything technical in this post is checkable from the build itself, and that is exactly what AppCompliance does: upload an iOS or Android build, and minutes later you have every issue that would get it rejected, with the exact fix next to it.
One email when we open the doors. No spam, just the launch.