你好团队早上好,我正在研究Android设备锁定。
我需要使用设备密钥Volume_up和Volume_down锁定我的设备(android 2.3.3)。如果按下volume_up键,设备应该锁定,如果我按下volume_down,设备应该解锁。这是我的方法。
private void lockNow() {
if ((dpm.getActiveAdmins() != null) && (dpm.isAdminActive(secureLock))) {
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, secureLock);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "is locked");
dpm.lockNow();
dpm.setMaximumTimeToLock(secureLock, 0);
intent.putExtra("force-locked", DeviceAdminInfo.USES_POLICY_FORCE_LOCK);
startActivityForResult(intent, Extra_Activity);
} else {
Log.d("The Device", "Could not lock because device admin not enabled");
}
}
volume onKeyUp
中使用的这个lockNow()方法清单:
<receiver
android:description="@string/admin_app_description"
android:label="@string/admin_app"
android:name="app_class_name$MyAdmin"
android:permission="android.permission.BIND_DEVICE_ADMIN" >
<meta-data
android:name="android.app.device_admin"
android:resource="@xml/admin_app_resource" />
<intent-filter >
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
</receiver>
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" >
</uses-permission>
目前设备没有锁定且没有错误。任何人都能帮我解决这个问题吗? 注意:它不适用于keygaurdmanager和powermanager。