Repository navigation
ShizukuPlus Knowledgebase
Common questions, troubleshooting steps, and explanations for behaviour you might encounter.
The service launched successfully over ADB but the privileged binder did not register within 30 seconds (two 15-second attempts). Common causes:
- Wireless Debugging was disabled mid-connection (e.g. the screen locked and the system turned it off).
- Another process is competing for the ADB port immediately after startup.
Steps to resolve:
- Tap Retry in the error dialog — a second attempt succeeds in most cases.
- If retries consistently fail, open Developer Options → Wireless Debugging and confirm it is still enabled.
- Check that no firewall, VPN, or ad-blocker app is restricting local loopback traffic.
Shizuku+ cannot reach the ADB port on 127.0.0.1. The most common cause is a network-filtering app blocking local loopback traffic.
Steps to resolve:
- Open your firewall, VPN, or ad-blocker settings.
- Add Shizuku+ (package:
af.shizuku.plus.api) to the allowlist. - Tap Start again.
Older builds displayed the raw exception stack trace in the terminal when connection failed. This looked like java.util.concurrent.TimeoutException: ... and was sometimes mistaken for JavaScript code.
This has been fixed. Connection failures now show plain-language error dialogs with a Retry button, and the terminal no longer displays stack traces for expected errors.
The terminal waits for window focus before starting the connection. If you see the terminal but no log output after a moment:
- Check that the activity is fully in the foreground (not in split-screen or a pop-up window that lost focus).
- If the port shown is
0, the port could not be resolved — return to the home screen and tap Start again after verifying Wireless Debugging is active.
This is intentional. The terminal closes immediately when the service is confirmed running to get you back to the main interface as fast as possible. The elapsed connection time (Connected in X.Xs) is shown just before close. If you need to review what happened, check Activity Log in Settings — every successful start is recorded there.
This typically happens after an app update that regenerated ADB keys, or after a factory-reset-style operation. The error dialog offers a Go to Developer Options button that navigates directly to the ADB key reset screen.
Steps:
- Tap Go to Developer Options in the SSL error dialog.
- In Developer Options, tap Revoke USB debugging authorizations (this resets ADB keys).
- Return to Shizuku+ and tap Pair to re-pair, then Start.
Auto-start requires the WRITE_SECURE_SETTINGS permission, which must be granted via ADB. If this permission is missing, a persistent notification will explain the issue with a link to the setup guide.
Grant the permission once with ADB, using the package name that matches the build you installed:
# Shizuku+ (standard build)
adb shell pm grant af.shizuku.plus.api android.permission.WRITE_SECURE_SETTINGS
# Shizuku+ Drop-In (installs under the stock Shizuku package name)
adb shell pm grant moe.shizuku.privileged.api android.permission.WRITE_SECURE_SETTINGSIf you see Failure [package not found], you're on the other build — run the other command. Not sure which you have? adb shell pm list packages | grep shizuku lists the installed package.
Also ensure battery optimization is disabled for Shizuku+ — Samsung OneUI and MIUI are particularly aggressive at killing background processes.
On first boot after a fresh install, the auto-start worker performs mDNS discovery to find the ADB port (up to 15 seconds). After the first successful connection, the port is remembered. Subsequent boots use the saved port directly — skipping discovery — and connect much faster.
The Watchdog feature is designed for this. Enable it in Settings → Start on Boot & Watchdog.
When active, Watchdog monitors the service state in real-time. If the service crashes, it restarts it automatically using exponential back-off (5 s, 10 s, 20 s … up to 5 minutes between attempts) to avoid hammering the system if there is a persistent issue.
Every crash and restart is logged to the Activity Log with a crash counter, so you can see how often and when restarts are happening.
If the Watchdog notification fires frequently, the service is being killed by the system rather than crashing on its own. This is common on:
- Samsung OneUI with Auto Blocker or Memory Optimization enabled.
- MIUI/HyperOS with Background Process Cleaner.
- OPPO/ColorOS with Battery Guard.
Steps to resolve:
- Disable battery optimization for Shizuku+ in system settings.
- Add Shizuku+ to any "protected apps" or "never sleep" lists your ROM provides.
- Disable Auto Blocker (Samsung) or equivalent on your device.
The Watchdog notification includes a Learn More link and a Turn Off Alerts option if you prefer not to see notifications for restarts.
The app uses Plus APIs that are exclusive to Shizuku+. The badge appears when the Plus API layer is disabled. Enable it in Settings → Shizuku+ Features.
Long-press actions are configurable per-action in Settings → App Management. If all long-press actions are disabled, the long-press is silently consumed. Enable the actions you want (Open App, App Info, Toggle Permission, Hide from List, Freeze/Unfreeze).
Settings → Activity Log. It records permission grants/revokes, long-press actions, freeze/unfreeze operations, and service start/stop events. Entries are retained for a configurable period (default: 30 days).
Activity logging must be enabled in Settings. If it was recently enabled, only events after the toggle will be recorded.
The dialog intentionally shows every release since your previous install — not just the one you just updated to. Development moves fast; if you updated from, say, r2640 to r2680, there may have been five or six separate builds in between with distinct features and fixes. The dialog surfaces all of them so you don't miss anything.
The newest release gets a full scrollable notes view at the top. Older missed releases appear as horizontal chips below it; tap any chip to open that release's GitHub page with its full notes.
The dialog fires once per version bump and is suppressed if the app is offline at the time (it fetches release notes from GitHub). It won't re-appear the next launch — the intent is not to nag. To see what changed, visit the Releases page on GitHub.
r{N} is the total number of commits in the repository's history. Each push to master increments it, so the gap between two version numbers tells you exactly how many commits are between them. There is no separate major/minor version — the commit count is the only number that matters for comparing builds.
Yes. Simplified Chinese (zh-Hans) is fully translated as of September 2026. If your device is set to Simplified Chinese, the app will display in Chinese automatically. Traditional Chinese (zh-Hant) is not yet available — contributions welcome via Crowdin.
Yes. Shizuku+ specifically targets Samsung OneUI and Android 14+ restrictions. The Overlay Manager Plus feature bypasses the stricter OverlayManager restrictions introduced in those versions.
Yes — Shizuku+ has robust cross-user binder sharing that allows it to serve apps running in the Secure Folder (user profile > 0).