diff --git a/Readme-en.md b/Readme-en.md index 730a274..0e484e1 100644 --- a/Readme-en.md +++ b/Readme-en.md @@ -1,4 +1,4 @@ -[简体中文](Readme.md) +[日本語](Readme-ja.md) | [简体中文](Readme.md) # OwnDroid diff --git a/Readme-ja.md b/Readme-ja.md new file mode 100644 index 0000000..2145e23 --- /dev/null +++ b/Readme-ja.md @@ -0,0 +1,157 @@ +[English](Readme-en.md) | [简体中文](Readme.md) + +# OwnDroid + +AndroidのDevice owner特権を使用してデバイスを管理します。 + +## ダウンロード + +[IzzyOnDroid F-Droid Repository](https://apt.izzysoft.de/fdroid/index/apk/com.bintianqi.owndroid) +[Releases on GitHub](https://github.com/BinTianqi/OwnDroid/releases) + +> [!NOTE] +> ColorOSユーザーはGitHubのリリースからtestkeyバージョンをダウンロードしてください + +## 機能 + +- システム + - オプション:カメラの無効化、スクリーンショットの無効化、マスターボリュームのミュート、USB信号の無効化... + - 権限ポリシー + - CA証明書の管理 + - _データの消去_ + - ... +- ネットワーク + - Wi-Fiの追加/変更/削除 + - ネットワーク統計 + - 最小Wi-Fiセキュリティレベル + - 常時オンVPN + - ネットワークログ + - ... +- ワークプロファイル + - ワークプロファイルの作成 + - 個人アプリの一時停止 + - ... +- アプリケーション + - アプリの一時停止/非表示 + - アンインストールのブロック + - アプリのインストール/アンインストール + - ... +- ユーザー制限 + - ネットワーク:モバイルネットワークの設定禁止、Wi-Fiの設定禁止、SMSの無効化、発信通話の禁止... + - 接続:Bluetoothの無効化、位置情報の設定禁止、USBファイル転送の無効化、印刷の無効化... + - アプリケーション:アプリのインストール/アンインストールの禁止... + - ユーザー:ユーザーの追加/削除/切り替えの禁止... + - メディア:明るさの調整禁止、音量の調整禁止... + - その他:アカウントの変更禁止、言語の設定禁止、工場出荷時設定へのリセット禁止、デバッグ機能の無効化... +- ユーザー管理 + - ユーザー情報 + - ユーザーの起動/切り替え/停止/削除 + - ユーザーの作成 + - ... +- パスワードとキーロック + - _パスワードのリセット_ + - パスワードの複雑さの要求 + - スクリーンタイムアウトの設定 + - ... + +## アクティベート + +- Shizuku (推奨) +- adbシェルでコマンドを実行: `dpm set-device-owner com.bintianqi.owndroid/.Receiver` + +## FAQ + +### アクティベート + +#### デバイスに既にアカウントが存在する場合 + +```text +java.lang.IllegalStateException: Not allowed to set the device owner because there are already some accounts on the device +``` + +解決策: +- これらのアカウントを保持しているアプリを凍結します。 +- これらのアカウントを削除します。 +- LSPosedモジュール [HookDPM](https://github.com/BinTianqi/HookDPM) を使用します。 + +#### デバイスに既に複数のユーザーが存在する場合 + +```text +java.lang.IllegalStateException: Not allowed to set the device owner because there are already several users on the device +``` + +解決策: +- セカンダリユーザーを削除します。 +- LSPosedモジュール [HookDPM](https://github.com/BinTianqi/HookDPM) を使用します。 + +> [!NOTE] +> 一部のシステムにはアプリのクローンや子供用スペースなどの機能があり、通常はユーザーとして扱われます。 + +#### MIUI + +```text +java.lang.SecurityException: Neither user 2000 nor current process has android.permission.MANAGE_DEVICE_ADMINS. +``` + +解決策: +- 開発者オプションで `USBデバッグ(セキュリティ設定)` を有効にします。 +- ルートシェルでアクティベートコマンドを実行します。 + +#### ColorOS + +```text +java.lang.IllegalStateException: Unexpected @ProvisioningPreCondition +``` + +解決策:OwnDroid testkeyバージョンを使用します + +## API + +| ID | Extras | 最小Androidバージョン | +|------------------------|---------------|:---------------------:| +| HIDE | `package` | | +| UNHIDE | `package` | | +| SUSPEND | `package` | 7 | +| UNSUSPEND | `package` | 7 | +| ADD_USER_RESTRICTION | `restriction` | | +| CLEAR_USER_RESTRICTION | `restriction` | | +| LOCK | | | + +[利用可能なユーザー制限](https://developer.android.com/reference/android/os/UserManager#constants_1) + +```shell +# ADBシェルでアプリを非表示にする例 +am broadcast -a com.bintianqi.owndroid.action.HIDE -n com.bintianqi.owndroid/.ApiReceiver --es key abcdefg --es package com.example.app +``` + +```kotlin +// 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) +``` + +## ビルド + +コマンドラインでGradleを使用してOwnDroidをビルドできます。 +```shell +# testkeyで署名(デフォルト) +./gradlew build +# カスタム.jksキーで署名 +./gradlew build -PStoreFile="/path/to/your/jks/file" -PStorePassword="YOUR_KEYSTORE_PASSWORD" -PKeyPassword="YOUR_KEY_PASSWORD" -PKeyAlias="YOUR_KEY_ALIAS" +``` +(Windowsでは `./gradlew.bat` を使用してください) + +## ライセンス + +[License.md](LICENSE.md) + +> Copyright (C) 2024 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 . diff --git a/Readme.md b/Readme.md index 4402f37..65d2f60 100644 --- a/Readme.md +++ b/Readme.md @@ -1,4 +1,4 @@ -[English](Readme-en.md) +[English](Readme-en.md) | [日本語](Readme-ja.md) # OwnDroid