10
我想添加一個按鈕到我的應用程序將其從設備管理器中刪除它,並使用下面的代碼,但我的應用程序只是崩潰。Android:以編程方式從設備管理員刪除我的應用程序?
代碼: -
在按鈕點擊: -
{
ComponentName devAdminReceiver = new ComponentName(this, DemoDeviceAdminReceiver.class);
DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
dpm.removeActiveAdmin(devAdminReceiver);
}
在上面的代碼,DemoDeviceAdminReceiver是擴展DeviceAdminReceiver類。
錯誤日誌: -
10-28 15:26:09.295: E/AndroidRuntime(26101): FATAL EXCEPTION: main
10-28 15:26:09.295: E/AndroidRuntime(26101): java.lang.IllegalArgumentException: Unknown admin: ComponentInfo{com.dragonnis.intellicover/com.dragonnis.intellicover.DemoDeviceAdminReceiver}
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.os.Parcel.readException(Parcel.java:1331)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.os.Parcel.readException(Parcel.java:1281)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.app.admin.IDevicePolicyManager$Stub$Proxy.removeActiveAdmin(IDevicePolicyManager.java:2940)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.app.admin.DevicePolicyManager.removeActiveAdmin(DevicePolicyManager.java:183)
讓我知道它是否有幫助。 – ViliusK
感謝您的快速響應。意圖過濾器已經存在於AndroidManifest.xml文件中。設備管理員已啓用,但嘗試刪除仍然導致崩潰。 –
哦,修好了。問題出在DeviceAdminReceiver類。我正在使用一個單獨的類來啓用設備管理員,但是當我嘗試刪除它時,我正在使用不同的DeviceAdminReceiver,它甚至沒有作爲設備管理員啓用。傻我。謝謝你的幫助。 –