S
ShizuPortal
ShizuStore

Unofficial ShizuStore Web Portal

This is an unofficial web portal for ShizuStore self-hosted by rdevz-ph. Visit the official portal at https://shizustore.com/.

OwnDroid

OwnDroid

Featuredv8.3.1
by BinTianqi•Device owner (DPM)•GPL-3.0
Need ShizuStore app? Download APK

Screenshots

(1)

About Application

简体中文 | 日本語

OwnDroid

Use Android's DevicePolicyManager API to manage your device.

Download

[!NOTE] ColorOS users should download testkey version from releases on GitHub

Features

  • System: disable camera, disable screenshot, master volume mute, disable USB signal, lock task mode, wipe data...
  • Network: add/modify/delete Wi-Fi, network stats, network logging...
  • Applications: suspend/hide app, block app uninstallation, grant/revoke permissions, clear app storage, install/uninstall app...
  • User restriction: disable SMS, disable outgoing call, disable bluetooth, disable NFC, disable USB file transfer, disable app installing/uninstalling...
  • Users: user information, create/start/switch/stop/delete user...
  • Password and keyguard: reset password, set screen timeout...

Working modes

  • Device owner (recommended)

    Activating methods:

    • Shizuku
    • Dhizuku
    • Root
    • ADB shell command dpm set-device-owner com.bintianqi.owndroid/.Receiver
  • Dhizuku

  • Work profile

FAQ

Already some accounts on the device

java.lang.IllegalStateException: Not allowed to set the device owner because there are already some accounts on the device

Solutions: freeze the accounts' holder apps, or delete those accounts.

Already several users on the device

java.lang.IllegalStateException: Not allowed to set the device owner because there are already several users on the device

Solution: Delete secondary users, including work profile, private space and app cloning.

Device owner is already set

java.lang.IllegalStateException: Trying to set the device owner (com.bintianqi.owndroid/.Receiver), but device owner (xxx) is already set.

Only one device owner can exist on a device. Please deactivate the existing device owner first.

MIUI & HyperOS

java.lang.SecurityException: Neither user 2000 nor current process has android.permission.MANAGE_DEVICE_ADMINS.

Solutions:

  • Enable USB debugging (Security setting) in developer options.
  • Or execute activating command in root shell.

ColorOS

java.lang.IllegalStateException: Unexpected @ProvisioningPreCondition

Solution: Use OwnDroid testkey version

The testkey and signed versions differ only in their signatures. There is no functional difference between them.

Samsung

user limit reached

Samsung restricts Android's multiple users feature. There is currently no solution.

Create work profile / user

On most devices, creating work profile is not allowed by the system when the device owner exist. Because the system add no_add_managed_profile user restriction when a device owner is set. Device owner can't modify user restrictions set by the system, but if your device is rooted, you can disable this restriction by executing the following commands in adb shell. Note: the device owner and the work profile owner can't be the same app, or the device owner will lose its privilege during reboot.

pm set-user-restriction no_add_user 0
pm set-user-restriction no_add_managed_profile 0
pm set-user-restriction no_add_private_profile 0
pm set-user-restriction no_add_clone_profile 0

You should bypass the restrictions at your own risk. It may cause unexpected behavior, for example, the system may delete the user you created silently during reboot.

Some systems disable the feature of adding users in Android settings once a device owner is set. You have to create users in OwnDroid. Or if you have root, run the above command in adb shell to remove that restriction.

For advanced users

API

OwnDroid provides an Intent-based API. You need to set the API key in settings and enable the API. The numbers in brackets represent the minimum Android version required.

  • HIDE(package: String)
  • UNHIDE(package: String)
  • SUSPEND(package: String) (7)
  • UNSUSPEND(package: String) (7)
  • DISABLE_METERED_DATA(package: String) (9)
  • ENABLE_METERED_DATA(package: String) (9)
  • DISABLE_USER_CONTROL(package: String) (11)
  • ENABLE_USER_CONTROL(package: String) (11)
  • BLOCK_UNINSTALL(package: String)
  • UNBLOCK_UNINSTALL(package: String)
  • CLEAR_APP_STORAGE(package: String) () (9)
  • ADD_USER_RESTRICTION(restriction: Boolean)
  • CLEAR_USER_RESTRICTION(restriction: Boolean)
  • SET_PERMISSION_DEFAULT(package: String, permission: String) (6)
  • SET_PERMISSION_GRANTED(package: String, permission: String) (6)
  • SET_PERMISSION_DENIED(package: String, permission: String) (6)
  • SET_SCREEN_CAPTURE_DISABLED()
  • SET_SCREEN_CAPTURE_ENABLED()
  • SET_CAMERA_DISABLED()
  • SET_CAMERA_ENABLED()
  • SET_USB_DISABLED() (12)
  • SET_USB_ENABLED() (12)
  • LOCK()
  • REBOOT() (7)
# An example of hiding app in ADB shell
am broadcast -a com.bintianqi.owndroid.action.HIDE -n com.bintianqi.owndroid/.ApiReceiver --es key abcdefg --es package com.example.app
// An example of hiding app in Kotlin
val intent = Intent("com.bintianqi.owndroid.action.HIDE")
    .setComponent(ComponentName("com.bintianqi.owndroid", "com.bintianqi.owndroid.ApiReceiver"))
    .putExtra("key", "abcdefg")
    .putExtra("package", "com.example.app")
context.sendBroadcast(intent)

Available user restrictions

Build

You can use Gradle in command line to build OwnDroid.

# Use testkey for signing (default)
./gradlew build
# Use your custom .jks key for signing
./gradlew build -PStoreFile="/path/to/your/jks/file" -PStorePassword="YOUR_KEYSTORE_PASSWORD" -PKeyPassword="YOUR_KEY_PASSWORD" -PKeyAlias="YOUR_KEY_ALIAS"

(Use ./gradlew.bat instead on Windows)

Contribute

Contributions are welcome!

  1. Fork this repository (deselect "Copy the master branch only", which is selected by default)
  2. Clone your own repository using git (please use the dev branch)
  3. Make changes (AI-assisted changes is allowed, but you have to ensure the quality)
  4. Run the app on your device or emulator to test your changes (required for code contributions, optional for translation contributions)
  5. Commit and push changes
  6. Open a pull request in this repository

License

License.md

Copyright (C) 2026 BinTianqi

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Release Notes & Changelog

This is a patch version for v8.3, which fixed a lifecycle issue of ViewModel. The complete changelog between v8.2 and v8.3 can be found here

这是一个 v8.3 的补丁版本,修复了 ViewModel 生命周期问题。完整的更新日志请见这里

Declared Android Permissions

15 total

Shizuku API Permissions

com.rosan.dhizuku.permission.API
moe.shizuku.manager.permission.API_V23

This application connects to the Shizuku service to execute system-level operations with ADB elevated privileges.

Standard Android Permissions

com.bintianqi.owndroid.MyPermission
POST_NOTIFICATIONS
REQUEST_INSTALL_PACKAGES
REQUEST_DELETE_PACKAGES
QUERY_ALL_PACKAGES
ACCESS_FINE_LOCATION
ACCESS_COARSE_LOCATION
ACCESS_WIFI_STATE
CHANGE_WIFI_STATE
USE_BIOMETRIC
FOREGROUND_SERVICE
FOREGROUND_SERVICE_SPECIAL_USE
com.bintianqi.owndroid.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

Specifications

Packagecom.bintianqi.owndroid
LicenseGPL-3.0
GitHub Stars1,407
Installs223
Target SDKAndroid 14+ (API 37)
Last UpdatedOctober 2, 2026
Release DateOctober 2, 2026
Root RequirementRootless (Shizuku)
ShizuStore Installation

Install via ShizuStore to enable automatic updates and silent installations using Shizuku.

More in Device owner (DPM)

Other applications in this category

View all (5)
OwnDroid - Shizuku App | ShizuPortal