How to Manage Android App Permissions After a System Update

10 min read Learn why Android system updates can reset app permissions and follow a step‑by‑step guide to audit, restore, and safeguard permissions on any device. September 28, 2026 03:00 How to Manage Android App Permissions After a System Update

Why a System Update Can Mess Up Your App Permissions

When Google releases a new Android version or a manufacturer pushes a security patch, the underlying permission model may be tweaked. Even if the UI stays the same, the update can:

  • Reset runtime permissions that were previously granted.
  • Introduce new permission groups that older apps haven’t requested yet.
  • Change default values for dangerous permissions, causing the system to revoke them until the user re‑approves.

For most users this is invisible until an app suddenly stops working (e.g., a camera app can’t open the camera, or a messaging app can’t read contacts). The goal of this guide is to give you a reliable workflow to detect which permissions changed, restore the ones you need, and prevent future surprises.

Before You Start

  • Charge your phone to at least 50 % – a reboot or ADB command will briefly cut power.
  • Connect to a stable Wi‑Fi network. Some steps involve downloading the adb platform‑tools.
  • If you plan to use ADB, enable Developer options (Settings > About phone > Tap Build number 7 times) and then turn on USB debugging (Settings > System > Developer options > USB debugging).
  • Back up important data. Changing permissions won’t erase data, but a mis‑step with adb shell pm grant on a system app could cause instability.

Step 1 – Quick Visual Audit Using the Permission Manager

  1. Open Settings → Privacy → Permission manager. (On some OEM skins the path may be Settings > Apps > Permission manager.)
  2. Select a permission category, e.g., Camera, Location, or Contacts.
  3. The screen shows three tabs: Allowed, Denied, and Ask every time. Browse each tab to see which apps have been granted or revoked.
  4. Take note of any app that moved from Allowed to Denied after the update.

What you should see: the list reflects the current runtime state. If an app you use daily is now under Denied, you’ll need to re‑grant the permission.

Step 2 – Re‑grant Permissions Manually

  1. In the same Permission manager screen, tap the app name that appears under Denied.
  2. Press Allow. The toggle may be labelled Ask every time on some devices – choose Allow to make it permanent.
  3. Repeat for each affected permission.

Why this matters: Android stores the decision per‑permission, not per‑app. Granting the permission again restores the original behavior without needing to reinstall the app.

Step 3 – Using ADB for Bulk Permission Checks and Restores

When you have many apps, manually hunting through the UI becomes tedious. ADB lets you script the process.

Note: ADB commands work on any Android 5.0+ device. No root is required for pm grant on user‑installed apps, but you cannot grant permissions to system apps without root.

3.1 Install ADB on Your Computer

  1. Download the platform‑tools zip for your OS.
  2. Extract the folder and add its path to your system’s PATH variable (optional but convenient).

3.2 List All Apps with Their Dangerous Permissions

adb shell pm list packages -3

This prints package names of all user‑installed apps. To see the permissions each app currently holds, run:

adb shell dumpsys package <package_name> | grep granted=true

3.3 Create a Simple Permission Snapshot

Run the following one‑liner (Linux/macOS/WSL) to dump a CSV of package → granted permissions:

adb shell pm list packages -3 | cut -d':' -f2 | while read pkg; do echo -n "$pkg,"; adb shell dumpsys package $pkg | grep granted=true | tr -d '\n' | sed 's/ //g'; echo; done > permissions_before.csv

Do the same after the system update (save as permissions_after.csv) and compare the two files with any diff tool. Any missing permission indicates a revocation.

3.4 Re‑grant Missing Permissions in Bulk

Suppose you identified that com.example.camera lost android.permission.CAMERA. Re‑grant it with:

adb shell pm grant com.example.camera android.permission.CAMERA

For a list of missing permissions, you can generate a small shell script:

#!/bin/bash
while IFS=, read pkg perms; do
  IFS=';' read -ra arr <<< "$perms"
  for p in "${arr[@]}"; do
    adb shell pm grant "$pkg" "$p"
  done
done < missing_permissions.csv

Save the script, make it executable (chmod +x grant_missing.sh), and run it. All listed permissions will be restored.

Step 4 – Automating Permission Backups with ADB

Because updates are inevitable, keeping a backup of your permission state lets you restore it quickly.

  1. Create a backup script called backup_perms.sh:
#!/bin/bash
adb shell pm list packages -3 | cut -d':' -f2 | while read pkg; do
  echo -n "$pkg," > tmp.txt
  adb shell dumpsys package $pkg | grep granted=true | tr -d '\n' >> tmp.txt
  echo >> tmp.txt
done > perms_backup_$(date +%F).csv
  1. Run it after you have manually set all permissions the way you like.
  2. Store the CSV in a cloud folder (Google Drive, Dropbox, etc.) so you can retrieve it on a new device or after a fresh flash.

When a future update rolls out, simply compare the new permission dump with your saved backup and re‑grant any differences using the script from Step 3.4.

Step 5 – Preventing Unexpected Permission Changes

While you can’t stop Android from resetting permissions during a major version upgrade, you can reduce the frequency of surprises.

  • Stick to the same Android version for as long as possible. Minor security patches rarely touch permissions.
  • Use the “Don’t ask again” option wisely. If you consistently deny a permission, the system may keep it denied after an update.
  • Consider a third‑party permission manager. Apps like Permission Manager (available on F-Droid) can export and import permission sets without root.
  • Enable “Automatic restore” for app data. Settings > System > Backup > Turn on “Automatic restore”. This helps the system remember your previous choices when you reinstall an app.

Troubleshooting

Permission Still Denied After Granting

  • Check for a “Special app access” restriction. Some OEMs hide camera or location permissions under Settings > Apps > Special app access. Grant the permission there as well.
  • App-specific “opt‑out” settings. Certain apps have an internal toggle (e.g., “Disable camera access”) that overrides the system flag. Open the app’s own settings and ensure the feature is enabled.

ADB Returns “Operation not allowed”

  • This happens when you try to grant a permission to a system app without root. Either skip that app or flash a custom ROM that allows pm grant on system packages.

Device Reboots Re‑revokes Permissions

If a reboot immediately resets your changes, the device may be running a managed profile (e.g., work profile) that enforces its own policy. In that case, you need to adjust the policy via the device’s MDM console or disable the profile.

Putting It All Together – A Quick Checklist

  1. After any system update, open Settings > Privacy > Permission manager and glance at the Denied tab.
  2. Manually re‑grant any critical permissions you spot.
  3. Run adb shell pm list packages -3 and generate a fresh permission CSV.
  4. Diff the new CSV against your last backup; note any missing entries.
  5. Use adb shell pm grant (or the bulk script) to restore missing permissions.
  6. Run your backup script again to keep the latest state saved.

Following this workflow means you’ll spend less time troubleshooting “Why won’t my app access the camera?” and more time using your phone the way you intended.

User Comments (0)

Add Comment
We'll never share your email with anyone else.