android设备管理器.md

android设备管理器

  • 1.android设备管理器(只有提示用户激活后,才可以使用)--DevicePolicyManager
    • 使用到三个类:
      • DevicePolicyManager
        密码定义的长度,密码是否要含大写字母,小写字母等设置密码需要满足的规范,锁定设备或是清除所有用户数据,要配合DeviceAdminReceiver来使用
        方法:
        • 1.进行锁屏操作

            mDevicePolicyManager.lockNow()
          
        • 2. 设置屏幕灯光变暗时间相关
          long timeout = 1000L * Long.parseLong(et.getText().toString());
          mDevicePolicyManager.setMaximumTimeToLock(mDeviceComponentName, timeout);
          mDevicePolicyManager.wipeData(0);

        • 3. 恢复出厂设置
          mDevicePolicyManager.wipeData(0);

      • DeviceAdminReceiver
        该类继承自 BroadcastReceiver 。 从源码可以看到,其实就是实现了一个OnReceive方法,该方法中根据不同的Action,执行相应的操作。 比如,如果激活成功,那么Action就是ACTION_DEVICE_ADMIN_ENABLED, 据此调用 onEnabled 方法。
      • DeviceAdminInfo
        包括设备信息,Info,就是Information嘛,呵,,乱猜也可以猜到,至于里面什么属性,到时候朋友们可以直接"."下就知道啦
    • 实现步骤:
      • 1.在androidmanifest.xml中注册一个广播类,用于监听权限的变化

        <receiver
        android:name=".AdminReceiver"
        android:description="@string/description"
        android:label="@string/labelValue"
        android:permission="android.permission.BIND_DEVICE_ADMIN"
        >
        <meta-data
        android:name="android.app.device_admin"
        android:resource="@xml/lockourscreen"/>
        <intent-filter>

        <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
        </intent-filter>

          </receiver>
        
        1. 创建管理权限的清单:--》早res的文件夹下创建一个xml文件夹,再创建lockourscreen.xml
          <?xml version="1.0" encoding="UTF-8"?>

          <device-admin
          xmlns:android="http://schemas.android.com/apk/res/android">
          <uses-policies>

          <force-lock />

                         <!--  因为今天我们只讲下简单的,所以其它的权限,小马先暂时注释掉咯,有兴趣的朋友们可以打开自己试下-->
                              <!-- 清除所有数据(恢复出厂设置)-->
                              <wipe-data /> 
                              <!-- 重置密码 -->
                              <reset-password />
                              <!-- 限制密码选择-->
                              <limit-password /> 
                              <!-- 监控登录尝试 -->
                              <watch-login />
                         
                     </uses-policies>
                 </device-admin>
          

        <uses-policies></uses-policies>中间的内容是可以不要的。因为这部分是系统给的提示语,而我们在自己做程序的时候,可以输入自己想写的内容。

      • 3.创建广播类deviceAdminReceiver 继承DeviceAdminReceiver并且实现相应的方法

      • 4.激活相关管理权限的操作的操作
        Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);

          //权限列表
          //EXTRA_DEVICE_ADMIN参数中说明了用到哪些权限, 
          intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, componentName);
          
          //描述(additional explanation)
          //EXTRA_ADD_EXPLANATION参数为附加的说明
          intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "--小马坏,小马爱,小马瓜瓜怪--");
          
          startActivityForResult(intent, 0);
        
      • 5.实现锁屏,等操作
        mDevicePolicyManager.lockNow();

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,860评论 25 709
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,632评论 0 17
  • 一,DeviceAdmin设备管理 在Android在2.2版本中引进的。通过用户授权自己的应用设备管理权限后,可...
    SScience阅读 29,159评论 5 5
  • 之前励志学好吉他 自己弹琴 自己写歌 碰到喜欢的姑娘 就唱给她听 后来啊 碰到了喜欢的姑娘 姑娘说 你弹棉花呢? ...
    名字不帅阅读 357评论 0 0
  • 写父亲的文章,在我心中一直觉得是个很恢宏的题目,要写出他的全面,我用自己的语言还驾驭不了父亲在我心目中的形象。因此...
    心有所愿阅读 387评论 0 1