推荐阅读:
浅析Android手机卫士sim卡绑定
深入浅析Android手机卫士保存密码时进行md5加密
详解Android 手机卫士设置向导页面
浅析Android手机卫士关闭自动更新
浅析Android手机卫士自定义控件的属性
浅析Android手机卫士读取联系人
浅析Android手机卫士接收短信指令执行相应 *** 作
浅析Android手机卫士手机定位的原理
浅析Android手机卫士之手机实现短信指令获取位置
设备管理员 Device admin
获取DevicePolicyManager对象,通过getSystemService(DEVICE_POliCY_MANAGER),设备策略管理器
调用DevicePolicyManager对象的lockNow()方法,锁定,此时会报 安全异常
新建一个类Myadmin继承系统的DeviceadminReceiver,这个是广播接收者
清单文件进行注册
添加<receiver>节点,设置名称
设置权限 androID:permission=”androID.permission.BIND_DEVICE_admin”
添加<Meta-data>元数据节点,设置名称 androID:name=”androID.app.device_admin”
设置资源 androID:resource=”@xml/device_admin_sample”
在res目录下新建xml的文件夹,新建一个device_admin_sample.xml文件
添加<intent-filter>节点,添加动作,androID.app.action.DEVICE_admin_ENABLED
此时还会报错
打开系统设置,找到设备管理器,勾选设备管理员权限,激活设备
开启管理员权限
获取Intent对象,new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_admin)
调用Intent对象putExtra(),传递数据,要激活的组件,
参数:DevicePolicyManager.EXTRA_DEVICE_admin,Componentname组件名对象
获取Componentname对象,new出来,参数:上下文,Myadmin.class
调用Intent对象putExtra(),传递解说数据,劝说用户开启,参数:
DevicePolicyManager.EXTRA_ADD_EXPLANATION,文本
调用startActivity()
调用DevicePolicyManager对象的isadminActive()方法,可以判断是否有管理员权限,参数:Componentname对象
调用DevicePolicyManager对象的resetPassword()方法,重置密码,参数:password,0,把password设置为””可以取消密码
调用DevicePolicyManager对象的wipeData()方法,清除数据,参数:清除sd卡DevicePlocyManager.WIPE_EXteraNL_STORGE
如果是0,就是恢复出厂设置
卸载软件
这个装上就卸载不掉了
调用DevicePolicyManager对象的removeActiveadmin()方法,清除管理员权限,参数:Componentname组件名对象,获取Componentname对象,new出来,参数:上下文,Myadmin.class
获取Intent对象
调用Intent对象的setAction()方法,设置动作,参数:androID.intent.action.VIEW
调用Intent对象的addcategory()添加类型,参数:androID.intent.category.DEFAulT
调用Intent对象的setData(),设置数据,
参数:Uri对象,获取Uri对象Uri.parse(“package:”+getPackagename())
调用startActivity()
device_admin_sample.xml
<device-admin xmlns:androID="http://schemas.androID.com/apk/res/androID"><uses-policIEs><limit-password /><watch-login /><reset-password /><force-lock /><wipe-data /><expire-password /><encrypted-storage /><disable-camera /></uses-policIEs></device-admin>
package com.tsh.mylockscreen;
import androID.app.Activity;import androID.app.admin.DevicePolicyManager;import androID.content.Componentname;import androID.content.Intent;import androID.net.Uri;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.Toast;public class MainActivity extends Activity {private DevicePolicyManager dpm;Componentname who;@OverrIDeprotected voID onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentVIEw(R.layout.activity_main);dpm = (DevicePolicyManager) getSystemService(DEVICE_POliCY_SERVICE);who=new Componentname(this,Myadmin.class);}// 一键锁屏public voID lockScreen(VIEw v) {if (dpm.isadminActive(who)) {dpm.lockNow();dpm.resetPassword("123",0);} else {Intent intent =new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_admin);intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_admin,who);intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,"快开启吧");startActivity(intent);Toast.makeText(this,"没有设备管理权限",1).show();}}//一键卸载public voID uninstall(VIEw v) {dpm.removeActiveadmin(who);Intent intent=new Intent();intent.setAction(Intent.ACTION_DELETE);intent.addcategory("androID.intent.category.DEFAulT");intent.setData(Uri.parse("package:"+getPackagename()));startActivity(intent);}}
以上所述是小编给大家介绍的AndroID 手机卫士设备管理权限锁屏的相关知识,希望对大家有所帮助!
总结以上是内存溢出为你收集整理的浅析Android 手机卫士设备管理权限锁屏全部内容,希望文章能够帮你解决浅析Android 手机卫士设备管理权限锁屏所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)