Shizuku guide

Phones

OnePlus, OPPO and realme

OxygenOS, ColorOS and realme UI share one base, so they share one page. One extra switch matters most.

On this page

1. Turn on Developer options

  1. Open Settings.

  2. Go to Settings, then About device, then Version and tap Build number 7 times. On older OxygenOS (13 or older) it is Settings, then About phone, then Build number.

  3. Enter your PIN if asked.

  4. Find Developer options. OxygenOS 15 and 16, ColorOS 15 and 16, realme UI 6 or newer: Settings, then System settings, then Developer options (or System & updates). OxygenOS 14, ColorOS 14, realme UI 5: Settings, then Additional settings, then Developer options. Older OxygenOS: Settings, then System, then Developer options.

  5. Names move between releases. If it isn't there, search Developer options in Settings.

  6. Turn on USB debugging.

Sources: XDA ColorOS thread, XDA OxygenOS thread, OPPO ColorOS 15, Techbone (third party)

2. Extra switches this brand needs

  1. Scroll to the very bottom of Developer options, the last item in the Apps section.

  2. Turn on Disable permission monitoring. On ColorOS and OxygenOS 16 it is called Disable system optimization. Without it, Shizuku says the permission of adb is limited.

  3. Can't find it after an update? Switch the phone's language to English, open Developer options, turn it on, then switch the language back.

  4. If apps still fail, restart the phone, then start Shizuku again.

ColorOS on Android 14 needs Shizuku 13.5.2 or newer. One user saw some system settings screens (display, permission manager) misbehave while Disable system optimization was on; turn it off again when you stop using Shizuku.

Sources: Shizuku setup guide, Issue 374, Issue 1224, Issue 2149, Issue 315, Release 13.5.2, Issue 2158

3. Pair and start

Follow the Wireless debugging steps. On a computer instead? The computer steps.

  • OxygenOS 14 can turn Wireless debugging off by itself, sometimes right after pairing. Keep USB debugging on so Shizuku survives.
  • Stuck on Waiting for service (seen on a OnePlus 12 with OxygenOS 16): have USB debugging, Wireless debugging and Disable system optimization all on.
  • Shizuku crashes in a loop when you tap the code field (seen on realme): one reporter fixed it by setting Developer options, then Smallest width above about 400. Try it if nothing else works.

Sources: Issue 515, Discussion 1000, Issue 260, Issue 1788

4. Keep Shizuku from stopping

  1. Open Shizuku's App info, then Battery usage (or App battery management).

  2. Turn on Allow background activity, Allow foreground activity and Allow auto launch. Names vary; or pick Don't optimize or Unrestricted.

  3. In Battery, then More settings (or Advanced optimization), turn off Deep optimization or Adaptive battery, and Sleep standby optimization.

  4. Lock Shizuku in Recents with the padlock. OnePlus has been seen undoing Don't optimize by itself, so this matters.

  5. Turn on Disable adb authorization timeout and set the USB default to No data transfer. OnePlus users saw Shizuku stop daily without them.

Also do the four steps every phone needs: unrestricted battery, Disable adb authorization timeout, No data transfer as the USB default, and leaving debugging on. They are on the Wireless page.

Sources: Don't kill my app: OnePlus, Don't kill my app: OPPO, Don't kill my app: realme, Issue 294, Issue 230, Issue 1224

5. Known problems on OnePlus, OPPO and realme

The permission of adb is limited

Turn on Disable permission monitoring, or Disable system optimization on 16 (step 2).

Sources: Shizuku setup guide, Issue 374, Issue 1224

Stuck on Waiting for service

Turn on USB debugging, Wireless debugging and Disable system optimization together.

Sources: Issue 260

ColorOS or OxygenOS 14 doesn't start on older Shizuku

Release 13.5.2 fixed ColorOS on Android 14. Update.

Sources: Release 13.5.2, Issue 353

Wireless debugging turns itself off

Keep USB debugging on.

Sources: Issue 515, Discussion 1000

Stops every day

Turn on Disable adb authorization timeout and set the USB default to No data transfer.

Sources: Issue 294, Issue 230, Issue 1224

ColorOS 12.1: start.sh No such file

Copy the command from Shizuku's View command. More.

Sources: Issue 2076

A banking app refuses to run

OxygenOS can hide an app from other apps, and Shizuku keeps working while hidden.

Sources: Issue 1980

6. Turn it all back off

  1. First, in each app that used Shizuku, undo what it changed, while Shizuku still runs. Some changes an app makes through Shizuku stay after Shizuku stops. Firewall and Fileglow have their own steps.

  2. In Shizuku, switch off every app in the list of authorized apps.

  3. Stop Shizuku with its stop option, or restart the phone.

  4. Open Developer options, then Wireless debugging, then Paired devices, tap the shizuku entry, then Forget.

  5. In Developer options, tap Revoke USB debugging authorizations. This removes every paired computer and device.

  6. Turn off Disable permission monitoring (or Disable system optimization).

  7. Unlock Shizuku in Recents and undo the battery switches from step 4 if you like.

  8. On some models Developer options stays listed until you clear the Settings app's storage. That is harmless.

  9. Turn off Disable adb authorization timeout if you turned it on, and set Default USB configuration back to File transfer if you want.

  10. Turn off Wireless debugging, then USB debugging.

  11. Turn off the switch at the top of Developer options: where you found it in step 1.

  12. Set Shizuku's battery usage back to optimized if you like.

  13. Uninstall Shizuku the normal way if you don't need it any more.

Sources: Shizuku setup guide, Android adb docs, Android developer options docs, Issue 467, Issue 451, Discussion 1000