我正在尝试从 xml 片段中做出意图:
<PreferenceScreen android:key="Admin" android:title="@string/prefTitleAdminApp" android:summary="@string/prefSumAdminApp">
<intent android:action="android.intent.action.ADD_DEVICE_ADMIN" />
</PreferenceScreen>
虽然在清单中有这个:
<receiver android:name="my.package.ARL.elements.AdminDevice"
android:label="ARL"
android:permission="android.permission.BIND_DEVICE_ADMIN">
<meta-data android:name="android.app.device_admin" android:resource="@xml/admin" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
<action android:name="android.intent.action.ADD_DEVICE_ADMIN" />
</intent-filter>
</receiver>
当我单击时,我将强制关闭,并显示“未找到处理 Intent { act=android.intent.action.ADD_DEVICE_ADMIN } 的活动
我哪里错了?这可能吗(对于设备管理员)?
是否可以像这样添加“额外”?:
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,adminName);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,getString(R.string.adminRights));
startActivityForResult(intent, 0);
但在xml格式?(没有在文档中找到额外的,只有看起来很接近的数据)
谢谢
编辑:我发现它不是 android.intent.action.ADD_DEVICE_ADMIN 而是 DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN。
但似乎从 xml 调用这样的意图不起作用,这仍然有效:
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,"ARL");
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,getString(R.string.adminRights));
startActivityForResult(intent, 0);
如果您对如何从 xml 调用此类意图有一个想法,那就太好了,