我有一个服务,我希望服务提升以将其作为设备管理员启用,直到现在我从服务中启动了这种 UI 交互,例如
Intent intent2 = new Intent();
intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent2.setAction(android.content.Intent.ACTION_VIEW);
intent2.setDataAndType(uri, "application/vnd.android.package-archive");
context.startActivity(intent2);
它可以工作,但是使用 DevicePolicyManager 我找不到方法:
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mAdminName);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "some text.");
context.startActivity(intent);
不起作用:不提倡什么,但也不要崩溃。如果没有intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
它,它只会崩溃,因为此代码位于服务的内部。想法?