# Permission Watcher

Some apps do not work without having a certain permission granted. But you want to grant the permission for the time only when you are using the app, and revoke the permission as soon as you leave the app.

Permission Watcher does exactly this. As soon as you leave the app, or after the set time has passed, it revokes an app's permissions (manifest and AppOp) on its own, or asks you to do so, depending on the preferences you've set.

Permission Watcher also notifies you to set permissions on newly installed apps (in primary user / owner profile only).

Note:

- Only the permissions with RED reference state are revoked, not those with the ORANGE state. So you MUST first set the reference states. See Permission References.
- Manifest permissions only with Dangerous protection level are watched. Those are the ones usually changed. Permissions with Signature or Development protection level or those with System-Fixed flag set are not watched, though they are changeable.
- PMX watches only User-installed or normal System apps, not Framework apps. Changing them might brick the device.
- On some devices Permission Watcher may not work reliably for apps in the secondary user / profile. Using it in combination with Scheduled Checker is recommended.

Why starting Permission Watcher fails?

Are you using ADB? Some OEMs remove permission `OBSERVE_GRANT_REVOKE_PERMISSIONS` or `SET_ACTIVITY_WATCHER` from Shell package. If this is the case with you, we are sorry. This is something we cannot fix. On such devices Permission Watcher can work only with root. See the Limitations of ADB.