Skip to content

App authorization

Hmn-Dev edited this page Sep 16, 2026 · 1 revision

App authorization

Any third-party app that wants elevated APIs must ask the user through Shevery — silently granting is impossible by design.

Request flow

  1. The app calls the Shizuku API (see Shizuku-API).
  2. Shevery shows RequestPermissionActivity: allow / deny, optionally always for this app.
  3. The decision is stored as FLAG_ALLOWED / FLAG_DENIED flags on the server side.

Management screen

Authorized apps lists allowed and denied apps with filters, and lets you grant or revoke access per app (AuthorizationManager). Revoking takes effect for subsequent API calls.

For developers

  • Check the runtime state first: ShizukuService#getUid (is the server on ADB user?) and #checkPermission (does the server hold enough rights?).
  • Users on Android 8.0 + ADB: if your process may not be started by an Activity, start a transparent activity once to trigger binder delivery (API 26 lacks registerUidObserver for ADB).

Clone this wiki locally