微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DevicePolicyManager引发SecurityException

如何解决DevicePolicyManager引发SecurityException

我正在使用Samsung Knox和设备管理来创建应用程序。 我正在尝试禁用键盘锁,但消息不断出现SecurityException:

Admin ComponentInfo{com.samsung.safedrive/com.samsung.safedrive.data.receiver.AdminReceiver} does not own the profile

请求管理员权限

        override fun requestAdminRights() {
        val intent = Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN)
        val deviceAdminReceiver = ComponentName(this,AdminReceiver::class.java)
        intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,deviceAdminReceiver)
        intent.putExtra(EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME,packageName)
        startActivityForResult(intent,ADMIN_RIGHTS_REQUEST_CODE)
    }

使用政策

<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-policies>
        <disable-keyguard-features />
        <force-lock />
    </uses-policies>
</device-admin>

DeviceAdminReceiver

class AdminReceiver: DeviceAdminReceiver() {

    override fun onEnabled(context: Context,intent: Intent) {
        super.onEnabled(context,intent)

        val devicePolicyManager = context.getSystemService(Context.DEVICE_POLICY_SERVICE) as DevicePolicyManager
        val componentName = ComponentName(context,AdminReceiver::class.java)
        devicePolicyManager.setKeyguarddisabled(componentName,true)
    }

    override fun ondisabled(context: Context,intent: Intent) {
        super.ondisabled(context,intent)
    }
}

清单

<receiver
            android:name=".data.receiver.AdminReceiver"
            android:description="@string/enterprise_device_admin_description"
            android:label="@string/app_name"
            android:permission="android.permission.BIND_DEVICE_ADMIN">
            <Meta-data
                android:name="android.app.device_admin"
                android:resource="@xml/device_admin_receiver" />
            <intent-filter>
                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
            </intent-filter>
        </receiver>
***

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。