Deviceadmin简单使用

屏幕锁定和恢复出厂设置

1.创建 MyAdmin 的广播接受者 继承 DeviceAdminReceiver


        <receiver android:name=".MyAdmin">
            <meta-data android:name="android.app.device_admin"
                android:resource="@xml/my_admin" />
            <intent-filter>
                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
            </intent-filter>
        </receiver>

res文件夹下创建xml文件夹,xml文件里创建my_admin.xml文件
my_admin.xml

<?xml version="1.0" encoding="utf-8"?>
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
        <uses-policies>
                <limit-password />
                <watch-login />
                <reset-password />
                <force-lock />
                <wipe-data />
        </uses-policies>
</device-admin>

2.获取IDevicePolicyManager

DevicePolicyManager  dm =  (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);


3.注册广播接受者为admin设备

ComponentName mAdminName = new ComponentName(this, MyAdmin.class);
if (mService != null) {

//先判断是否已经激活
        if (!mService.isAdminActive(mAdminName)) {
                    Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
                    intent.putExtra (DevicePolicyManager.EXTRA_DEVICE_ADMIN,mAdminName);
                    startActivity(intent);
                }

}


4.点击事件中进行锁屏或者清零数据处理 

        dm.resetPassword("123", 0);  //设置锁屏密码,“123”为设置的密码


        dm.lockNow();//锁屏
        
        dm.wipeData(0);//恢复出厂设置,0改为1可清除手机和sd卡的数据

dm.removeActiveAdmin(mAdminName)//设置为非激活状态


猜你喜欢

转载自blog.csdn.net/vice_q/article/details/50556014