2025 年 3 月 27 日より、AOSP のビルドとコントリビューションには aosp-main
ではなく android-latest-release
を使用することをおすすめします。詳細については、AOSP の変更をご覧ください。
デバイス管理機能をテストする
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
管理対象プロファイルのサポートを最小限に抑えるには、OEM デバイスに対して以下の不可欠な要素を指定する必要があります。
要件の全リストについては、デバイス管理を実装するをご覧ください。デバイス所有者は、下記のように TestDPC アプリを使用して、デバイス管理機能をテストできます。
テスト用にデバイス オーナーをセットアップする
次の手順に沿って、デバイス所有者のテスト環境を設定します。
- 対象のデバイスを出荷時の設定にリセットします。
- デバイスにユーザー アカウントが残っていないことを確認します(オンライン サービスへのログインに使用されているユーザー アカウントなども含む)。アカウントは、[設定] > [アカウント] で確認できます。
- 次のいずれかの方法で、テストアプリをセットアップします。
- 次のコマンドを使用して、TestDPC アプリをデバイス所有者として設定します。
adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
- デバイス上で、デバイス所有者に関するすべてのセットアップを完了します(暗号化や Wi-Fi の選択)。
デバイス所有者のセットアップを検証する
デバイス オーナーが正しく設定されていることを確認するには、[設定] > [セキュリティ] > [デバイス管理アプリ] に移動し、TestDPC が一覧に表示されることを確認します。また、TestDPC を無効にできないことを確認します(これにより、TestDPC がデバイス オーナーであることがわかります)。
バグレポートとログ
Android 7.0 以降、デバイス所有者のデバイス ポリシー クライアント(DPC)が、バグレポートを取得して、管理対象デバイス上のエンタープライズ プロセスのログを表示できるようになりました。
バグレポート(adb bugreport
が収集するデータと同等。dumpsys
、dumpstate、logcat のデータが含まれます)をトリガーするには、DevicePolicyController.requestBugReport
を使用します。バグレポートの収集が完了すると、バグレポート データの送信に関して同意を求めるメッセージがユーザーに表示されます。結果は、DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]
に送信されます。バグレポートの内容については、バグレポートを読むをご覧ください。
また、デバイス所有者 DPC は、管理対象デバイス上でユーザーが行ったアクションに関するログを収集することもできます。device_admin をレポートするすべてのデバイスにおいて、エンタープライズ プロセスのロギングが必要となります。このロギングでは、システム サーバーだけが読み取れる新しいログ セキュリティ バッファが使用されます(つまり $ adb logcat -b security
はバッファを読み取れません)ActivityManager サービスと Keyguard コンポーネントは、以下のイベントをセキュリティ バッファに記録します。
- アプリケーション プロセスの開始
- キーガードの操作(ロック解除の失敗や成功など)
- デバイスに発行された
adb
コマンド
必要に応じて、コールドブート後ではなくリブート後もログを保持し、そのログをデバイス オーナー DPC で使用することができます。そのためには、pstore
と pmsg
を有効にしたカーネルをデバイス内に設定し、リブートのすべてのステージで DRAM に対して電源供給とリフレッシュを行い、メモリ内に保持されているログの破損を防ぐ必要があります。サポートを有効にするには、frameworks/base/core/res/res/values/config.xml
内で config_supportPreRebootSecurityLogs
設定を使用します。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# Test device management\n\nTo ensure minimal support for managed profiles, OEM devices must contain the\nfollowing essential elements:\n\n- Profile owner (as described in [Ensuring\n Compatibility with Managed Profiles](https://developer.android.com/training/enterprise/app-compatibility.html))\n- Device owner\n\nFor a complete list of requirements, see\n[Implement device\nmanagement](/docs/devices/admin/implement). To test device management features, device owners can\nuse the TestDPC application described below.\n\nSet up device owner for testing\n-------------------------------\n\nUse the following instructions to set up a device owner testing environment.\n\n1. Factory reset the target device.\n2. Ensure the device does not contain any user accounts (for example, those used to log into online services). To verify, check *Settings \\\u003e Accounts*.\n3. Set up the testing application using one of the following methods:\n - [Download\n the TestDPC application](https://play.google.com/store/apps/details?id=com.afwsamples.testdpc&hl=en) (available from Google Play).\n - [Build\n the TestDPC application](https://github.com/googlesamples/android-testdpc/) (available from github.com).\n4. Set the TestDPC app as the device owner using the following command: \n\n ```\n adb shell dpm set-device-owner \"com.afwsamples.testdpc/.DeviceAdminReceiver\"\n ```\n5. Go through device owner setup on the device (encrypt, select Wi-Fi).\n\nVerify device owner setup\n-------------------------\n\nTo verify the device owner was correctly setup, go to *Settings \\\u003e\nSecurity \\\u003e Device Administrators* and confirm TestDPC is in the\nlist. Verify it cannot be disabled (this signifies it is a device owner).\n\nBug reports and logs\n--------------------\n\nAs of Android 7.0, device owner Device Policy Client (DPCs) can get bug\nreports and view logs for enterprise processes on a managed device.\n\nTo trigger a bug report (that is, the equivalent data collected by\n`adb bugreport` containing `dumpsys`, dumpstate, and\nlogcat data), use `DevicePolicyController.requestBugReport`. After\nthe bug report is collected, the user is prompted to give consent to send the\nbug report data. Results are received by\n`DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]`. For\ndetails on bug report contents, see\n[Reading bug reports](/docs/setup/read-bug-reports).\n\nIn addition, device owner DPCs can also collect logs related to actions a\nuser has taken on a managed device. Enterprise process logging is required for\nall devices that report device_admin and enabled by a new log security buffer\nreadable only by the system server (that is, `$ adb logcat -b security`\ncannot read the buffer). ActivityManager service and Keyguard components log the\nfollowing events to the security buffer:\n\n- Application processes starting\n- Keyguard actions (for example, unlock failure and success)\n- `adb` commands issued to the device\n\nTo optionally retain logs across reboots (not cold boot) and make these logs\navailable to device owner DPCs, a device must have a kernel with\n`pstore` and `pmsg` enabled, and DRAM powered and\nrefreshed through all stages of reboot to avoid corruption to the logs retained\nin memory. To enable support, use the\n`config_supportPreRebootSecurityLogs` setting in\n`frameworks/base/core/res/res/values/config.xml`."]]