4

こんにちは、Intent を使用せずにアプリケーションを起動するときに、Device Admin を起動/アクティブ化したいと考えています。今、私はこのコードを使用しています:

Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
            intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, Global.mDeviceAdminSample);
            intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,
                    "Additional text explaining why this needs to be added.");
            startActivityForResult(intent, RESULT_ENABLE);

しかし、私はインテントを使用したくありません。Device Admin を直接起動したい。

どうすればそれができるか誰にもわかりますか?

ありがとう。

4

3 に答える 3

2

幸いなことに、ユーザーの操作なしでは不可能です。ユーザーは、設定でデバイス管理者としてアプリを確認する必要があります。これにより、ユーザーを設定に移動できるようになります。

アプリがユーザーの操作なしでデバイス管理者をアクティブ化できる場合、大きなセキュリティ リスクになります (デバイス管理者にはかなり大きな権限があります)。

于 2014-01-24T13:16:12.837 に答える
-2

次の方法で実行できます:
1) add shell コマンドを使用:

adb shell dpm set-device-admin --user 0 com.mydeviceadmin/.deviceAdminReceiver  

2) プログラムで:

Runtime.getRuntime().exec("dpm set-device-admin --user 0 com.mydeviceadmin/.deviceAdminReceiver")  

Android 6.0 でテスト済み。ルートは必要ありません。

デビッド

于 2019-08-25T19:22:42.477 に答える