0

アプリで画面のロックを実装しようとしています。私はGoogleのドキュメントを調べて、サンプルを調べました。

私がこれを呼び出すとき

    void getAdmin(){
    Intent activateDeviceAdminIntent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
        activateDeviceAdminIntent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mPolicy.getPolicyAdmin());
        activateDeviceAdminIntent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,
                getResources().getString(R.string.AdminReceiverDescr));
        startActivityForResult(activateDeviceAdminIntent, REQ_ACTIVATE_DEVICE_ADMIN);
}

ダイアログは表示されません (少し点滅するかもしれませんが、確かなことは言えません)。onResult ルーチンにジャンプするだけで、結果は「許可されません」です。しかし、その後、私のアプリは設定/セキュリティ/デバイス管理者のリストに表示され、管理者権限を手動で有効にすると、画面が魔法のようにロックされます。

許可を追加しました

uses-permission android:name="android.permission.BIND_DEVICE_ADMIN"

としても

受信者... android:permission="android.permission.BIND_DEVICE_ADMIN"

私のマニフェストに。

誰かが私が見逃したかもしれない手がかりを持っていますか? 事前にt​​hx!

4

1 に答える 1

1

私のマニフェストで問題が見つかりました: $ 記号で受信者サブクラスを指定する必要があります。

例: android:name="com.exampl.PolicyClass$PolicyReceiver"

于 2012-11-08T01:12:40.360 に答える