Dhizuku icon

Dhizuku

v2.12.0guideapp

A tool that can share DeviceOwner permissions to other application.

★3,927 stars
•System Utilities•by iamr0s•GPL-3.0•Updated Jun 24, 2026
Platforms:
✓ Rootless✓ Shizuku✓ Magisk✓ KernelSU✓ APatch

Overview

Dhizuku, created by iamr0s, solves one of the oldest architectural limitations of the Android operating system: Device Owner exclusivity.

Under the Android Enterprise framework (android.app.admin.DevicePolicyManager), a single application can be designated as the system’s “Device Owner”. The Device Owner holds extraordinary administrative powers over the device:

  • Silently installing and uninstalling applications without user confirmation
  • Instantly freezing (hiding) background packages without battery drain
  • Restricting network policies, camera usage, and notification banners
  • Managing hardware keys and kiosk mode

Because Android enforces a strict one-owner rule, users historically had to choose between one specific freeze utility (like Island or Ice Box) or lock themselves out of other tools. Dhizuku acts as a Device Owner Proxy Server: it claims the single Device Owner slot and exposes a clean Binder IPC API to allow authorized client apps (Hail, Canta, App Manager, Install with Options) to safely share those administrative privileges.


Technical Architecture & Binder Proxying

  • Android System Framework: Hosts android.app.admin.DevicePolicyManager (DPM) providing enterprise-grade administrative APIs.
  • Dhizuku Server:
    • Holds official Device Owner status via DeviceAdminReceiver.
    • Enforces per-application permission tokens and access policies.
    • Multiplexes IPC Binder requests between unprivileged clients and DPM.
  • Delegated Client Applications:
    • Hail: Freezes, hides, or suspends apps using Device Policy Manager APIs without root.
    • App Manager / Canta: Manages user policies and system package lifecycles cleanly.

Activation Methods

Dhizuku can be activated through three distinct vectors depending on your device setup:

Method 1: Root Activation (Magisk, KernelSU, APatch)

If your device is rooted, open Dhizuku, select Root Activation, and tap Grant when your root manager dialog appears. Dhizuku automatically writes its component to /data/system/device_owner_2.xml and reloads policy caches.

Method 2: Shizuku Activation

If you already run Shizuku:

  1. Open Dhizuku.
  2. Select Activate via Shizuku.
  3. Authorize the Shizuku permission request.

Method 3: Rootless ADB Shell (No Root Required)

For completely stock devices:

  1. Enable Developer Options and USB Debugging on your phone.
  2. Connect your device to a computer with Android SDK Platform-Tools.
  3. Open a terminal and run:
    adb shell dpm set-device-owner com.rosan.dhizuku/.server.DhizukuDAReceiver
  4. If successful, your terminal displays Success: Device owner set to package....

Note: If you receive java.lang.IllegalStateException: Not allowed to set the device owner because there are already some accounts on the device, you must temporarily remove all Google, Telegram, and corporate accounts under Settings -> Passwords & Accounts, run the command, and re-add them afterwards.


Ecosystem Integration

Once activated, Dhizuku powers a rich suite of rootless open-source utilities:

  • Hail: Instantly freezes bloatware and background games using DevicePolicyManager.setApplicationHidden().
  • Canta: Deep debloater that safely removes OEM system packages without bootloop risk.
  • Install with Options: Enables silent downgrade, bypass of SDK version limits, and split APK installations without manual tapping.

Frequently Asked Questions

How does Dhizuku differ from Shizuku?

Shizuku shares ADB / Shell privileges (android.permission.DUMP, pm, am, appops) using an elevated system shell daemon. Dhizuku, by contrast, registers as the Android system's official **Device Owner** (DevicePolicyManager), exposing enterprise-grade APIs like silent app installation, background application freezing/hiding (setApplicationHidden), lock task mode, and status bar restrictions.

How do I fix 'Not allowed to set the device owner because there are already some accounts on the device'?

Android security rules strictly forbid assigning a Device Owner if any user account is active. Go to Android **Settings -> Passwords & Accounts**, temporarily remove all Google, WhatsApp, Samsung, and cloud accounts, run the ADB command adb shell dpm set-device-owner com.rosan.dhizuku/.server.DhizukuDAReceiver, and then log back into your accounts.

How can I completely remove Dhizuku without a factory reset?

Open Dhizuku -> Settings -> tap **Deactivate Device Owner**. Alternatively, revoke it via ADB using: adb shell dpm remove-active-admin com.rosan.dhizuku/.server.DhizukuDAReceiver. Once deactivated, the app can be uninstalled like any standard APK.