How to Use Shizuku: A Comprehensive Guide for Android Users

Shizuku is a powerful tool for Android that allows applications to directly utilize system APIs with adb/root privileges. This guide will walk you through the different methods to start Shizuku and troubleshoot common issues, ensuring you can effectively leverage its capabilities on your device, including devices running Flyme OS.

Starting Shizuku

Shizuku offers multiple startup methods to accommodate various Android versions and device configurations. Choose the method that best suits your device and situation.

Starting with Root Access

If your Android device is rooted, starting Shizuku is straightforward. Simply launch the Shizuku app, and it should initiate with root privileges automatically. This is the simplest and most direct method for rooted users.

Starting via Wireless Debugging (Android 11 and Above)

For devices running Android 11 or later, wireless debugging provides a convenient way to start Shizuku without needing a computer connection after the initial setup. Note that due to system limitations, this process needs to be repeated after each device reboot.

Enabling Wireless Debugging

Before you can start Shizuku wirelessly, you need to enable wireless debugging on your Android device. Here’s how:

  1. Enable Developer Options: If you haven’t already, enable “Developer options” on your device. The process varies slightly depending on the manufacturer, but generally involves going to “Settings” -> “About phone” and tapping “Build number” multiple times until you see a message confirming that developer options are enabled. Search online for specific instructions for your device model if needed.

  2. Access Developer Options: Once enabled, navigate to “Developer options” in your device’s “Settings” menu.

  3. Enable USB Debugging: Within “Developer options,” locate and enable “USB debugging.”

    Alt Text: Screenshot showing the “USB debugging” option toggled on within Android Developer options.

  4. Enter Wireless Debugging Settings: Scroll down in “Developer options” and find “Wireless debugging.” Tap to enter the wireless debugging settings.

    Alt Text: Screenshot highlighting the “Wireless debugging” option in the Developer options menu on Android.

  5. Enable Wireless Debugging: Toggle the switch to enable “Wireless debugging.”

    Alt Text: Screenshot showing the “Wireless debugging” toggle switch in the on position within Android settings.

Pairing (One-Time Setup)

Pairing is required only once for each device to establish a secure connection for wireless debugging. Follow these steps:

  1. Initiate Pairing in Shizuku: Open the Shizuku app and tap on the option to start pairing.

    Alt Text: Screenshot from the Shizuku app interface showing the button to “Pair via Wireless debugging”.

  2. Navigate to Wireless Debugging: Go back to the “Wireless debugging” settings on your device, as described in the Enable Wireless debugging section.

  3. Start Pairing in System Settings: In “Wireless debugging,” tap “Pair device with pairing code.”

    Alt Text: Screenshot of the Android Wireless debugging settings, emphasizing the “Pair device with pairing code” option.

  4. Enter Pairing Code: A pairing code will be displayed. Enter this code in the Shizuku notification prompt that appears.

    Alt Text: Screenshot of an Android notification from Shizuku requesting the wireless debugging pairing code.

Starting Shizuku After Pairing

Once paired, you can start Shizuku. In the Shizuku app, tap the “Start” button.

Alt Text: Screenshot from the Shizuku app displaying the “Start” button to initiate the Shizuku service.

If Shizuku fails to start, try toggling the wireless debugging setting off and on again in your device’s developer options.

Starting by Connecting to a Computer (Android 10 and Below)

For devices running Android 10 and older, starting Shizuku requires using a computer and the Android Debug Bridge (adb) tool. This method is necessary for unrooted devices on these older Android versions. Like wireless debugging, this process needs to be repeated after each reboot.

Understanding ADB

Android Debug Bridge (adb) is a command-line tool essential for communicating with Android devices. It allows you to perform various actions, including installing applications, debugging, and accessing a Unix shell to run commands directly on your device. For more detailed information, refer to the Android Developer documentation.

Installing ADB

To use adb, you first need to install the Android SDK Platform Tools on your computer.

  1. Download SDK Platform Tools: Download the “SDK Platform Tools” package from Google’s Android developer website. Extract the downloaded ZIP file to a convenient location on your computer.
  2. Open Command Line in ADB Directory: Navigate to the extracted “platform-tools” folder using your file explorer. Open a command-line interface (Terminal on macOS/Linux, PowerShell or Command Prompt on Windows) within this folder.
    • Windows 10: Right-click within the folder while holding down the Shift key, and select “Open PowerShell window here.”
    • Windows 7: Right-click within the folder while holding down the Shift key, and select “Open command window here.”
    • macOS or Linux: Open Terminal and navigate to the directory using the cd command (e.g., cd path/to/platform-tools).
  3. Verify ADB Installation: In the command-line window, type adb and press Enter. If adb is installed correctly, you will see a list of adb commands and options, rather than an error message indicating that adb is not found.

Tip: Keep this command-line window open, as you will need it for subsequent steps. If you close it, you will need to repeat step 2. In PowerShell or on Linux/macOS, you might need to prefix adb commands with ./adb (e.g., ./adb devices).

Setting Up ADB Connection

Before using adb to start Shizuku, you need to enable USB debugging on your Android device and establish a connection with your computer.

  1. Enable Developer Options and USB Debugging: Follow steps 1-3 in the Enable Wireless debugging section to enable Developer options and USB debugging on your device.

  2. Connect Device to Computer: Connect your Android device to your computer using a USB cable.

  3. Authorize USB Debugging: In the command-line window (opened in the “platform-tools” directory), type adb devices and press Enter.

  4. Allow USB Debugging on Device: Look at your Android device’s screen. A dialog box titled “Allow USB debugging?” should appear. Check the “Always allow from this computer” box and tap “OK” or “Allow” to authorize debugging from your computer.

  5. Verify Device Connection: Run the adb devices command again in the command-line window. If the setup is successful, you should see your device listed as “device” under “List of devices attached,” like this:

    List of devices attached
    XXX device

Tip: The exact steps to enable Developer Options might slightly vary across different Android devices. If you encounter difficulties, search online for instructions specific to your device model.

Starting Shizuku via ADB Command

Once adb is set up and your device is connected and authorized, you can start Shizuku using a specific adb command.

  1. Copy the Command: Copy the following command:

    adb shell sh /sdcard/Android/data/moe.shizuku.privileged.api/start.sh

    This command is for Shizuku v11.2.0 and later versions.

  2. Paste and Execute Command: Paste the copied command into the command-line window and press Enter.

If everything is successful, you should see a confirmation in the Shizuku app indicating that Shizuku has started successfully.

Frequently Asked Questions (FAQ) and Troubleshooting

Many Android device manufacturers implement system modifications that can interfere with Shizuku’s proper functioning. This section addresses common issues and provides solutions, particularly for devices like those running Flyme OS.

Wireless Debugging: “Searching for pairing service” Issue

Problem: Shizuku continuously displays “Searching for pairing service” when attempting to start via wireless debugging.

Cause: This issue typically arises when Shizuku is restricted from running in the background. Access to the local network is required for discovering the pairing service, and aggressive background app management by some manufacturers can block this access when Shizuku is not in the foreground. This can be relevant for devices with Flyme OS or similar OS customizations.

Solution: Ensure that Shizuku is allowed to run in the background without restrictions. The method to allow background activity varies by device manufacturer and Android version. Search online for instructions on how to allow apps to run in the background for your specific device model, particularly if it’s a Flyme OS device. This might involve adjusting battery optimization settings or background app permissions for Shizuku in your device’s settings.

Wireless Debugging: Immediate Failure After “Enter pairing code”

Problem: Shizuku immediately fails to start after tapping “Enter pairing code” during wireless debugging setup.

Cause: This issue is commonly observed on devices running MIUI (Xiaomi, POCO) and is related to the notification style setting.

Solution: Switch the notification style in your system settings to “Android.” Navigate to “Settings” -> “Notifications” -> “Notification shade” and change the style from “Notification” (MIUI style) to “Android.”

Wireless/ADB Startup: “Permission of adb is limited” Error

Problem: You encounter a “permission of adb is limited” error when trying to start Shizuku via wireless debugging or by connecting to a computer using adb. This can be relevant for users trying to use tools like Shizuku on Flyme OS.

Solutions for Specific OS:

  • MIUI (Xiaomi, POCO): Enable “USB debugging (Security settings)” in “Developer options.” Note that this is a distinct option from the standard “USB debugging” setting. This setting is often required on MIUI to grant necessary permissions for adb operations.
  • ColorOS (OPPO & OnePlus): Disable “Permission monitoring” within “Developer options.” This feature in ColorOS can sometimes interfere with adb permissions.
  • Flyme (Meizu): Disable “Flyme payment protection” in “Developer options.” Flyme OS, used by Meizu devices, has a “Flyme payment protection” feature that can limit adb permissions. Disabling this option can resolve the “permission of adb is limited” error when using tools like Shizuku on Flyme OS.

Wireless/ADB Startup: Shizuku Randomly Stops

Problem: Shizuku starts successfully but stops working unexpectedly after a short period, or seemingly at random times.

General Solutions for All Devices:

  • Background Running: Ensure Shizuku is permitted to run in the background without being killed by the system. This is crucial for maintaining Shizuku’s service.
  • Persistent Debugging Settings: Do not disable “USB debugging” or “Developer options” after starting Shizuku. These settings are necessary for Shizuku to function correctly.
  • USB Configuration: Change the USB usage mode to “Charge only” in “Developer options.”
    • Android 8: Look for “Select USB configuration” and choose “Charge only.”
    • Android 9+: Look for “Default USB configuration” and choose “No data transfer.” Setting USB configuration to “Charge only” can prevent interruptions in the adb connection and Shizuku’s service.
  • (Android 11+): Enable the “Disable adb authorization timeout” option in Developer options. This can prevent the system from revoking adb authorization, which can cause Shizuku to stop.

Device-Specific Solutions:

  • EMUI (Huawei): Enable “Allow ADB debugging in ‘Charge only’ mode” in “Developer options.” This setting is specific to Huawei’s EMUI and is needed to allow adb debugging when the USB mode is set to charge only.
  • MIUI (Xiaomi, POCO): Avoid using the “scan” feature in MIUI’s “Security” app. This feature has been known to inadvertently disable “Developer options,” which will stop Shizuku from working.
  • Sony: When connecting your Sony device via USB, do not interact with the dialog that appears after connection. Interacting with this dialog can sometimes change the USB usage mode and disrupt Shizuku.

Root Startup: Cannot Start on Boot

Problem: Shizuku is set to start with root but fails to start automatically when the device boots up.

Solution: Again, ensure that Shizuku is allowed to run in the background without restrictions. Background app management can prevent Shizuku from starting automatically on boot, even with root permissions. Adjust your device’s battery and app management settings to allow Shizuku to run in the background persistently.

By following this comprehensive guide, you should be able to successfully start and use Shizuku on your Android device, even when facing common issues or using customized Android distributions like Flyme OS. Remember to consult device-specific forums and communities for further assistance if you encounter problems not covered in this guide.

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *