博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
锁屏和清除数据
阅读量:3984 次
发布时间:2019-05-24

本文共 2053 字,大约阅读时间需要 6 分钟。

锁屏和清除数据需要的权限比较高,需要先激活设备管理器策略,使应用程序获得权限

激活设备管理策略

步骤:

1.创建device-admin的xml文件,用来声明要申请的权限

2.自定义DeviceAdminReceiver的子类MyAdminReceiver(设备权限广播接收)

3.清单文件配置该广播,指定device-admin的xml文件

4.使用MyAdminReceiver创建ComponentName来开启权限申请页面

示例代码

device_admin_sample.xml 声明要申请的权限

MyAdminReceiver.java

package com.itheima.mobilesafe.receiver;import android.app.admin.DeviceAdminReceiver;/** * 给应用程序添加的设备管理员 * @author Administrator * */public class MyAdminReceiver extends DeviceAdminReceiver {	}
清单文件配置

MyAdminReceiver" android:description="一键锁屏描述信息" android:label="一键锁屏" android:permission="android.permission.BIND_DEVICE_ADMIN" >
device_admin_sample" />
开启权限申请activity

private ComponentName cn;cn = new ComponentName(Settings04Activity.this, MyAdminReceiver.class);Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, cn);intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,                 "开启管理员策略之后,可以一键锁屏、远程删除数据");//打开激活管理员策略的界面startActivity(intent);
激活界面

锁屏和清除数据

private DevicePolicyManager dpm;bool bActive = dmp.isAdminActive(new ComponentName(Settings04Activity.this, MyAdminReceiver.class));//判断是否激活设备策略权限dpm = (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE);//删除数据dpm.wipeData(0);//0表示恢复原厂设置 ,dpm.wipeData(DevicePolicyManager.WIPE_EXTERNAL_STORAGE);//格式化SD卡					System.out.println("远程锁屏..................");//一键锁屏dpm.lockNow();//设置解屏密码dpm.resetPassword("123", 0);

卸载应用程序

激活了设备策略的应用不可直接卸载,必须先取消设备策略
也可用代码卸载
ComponentName cn = new ComponentName(this, MyAdmin.class);		//可以移除管理员		dpm.removeActiveAdmin(cn);		Intent intent = new Intent();		intent.setAction("android.intent.action.UNINSTALL_PACKAGE");		intent.addCategory("android.intent.category.DEFAULT");		intent.setData(Uri.parse("package:"+getPackageName()));		startActivity(intent);

你可能感兴趣的文章
Phone双模修改涉及文件列表
查看>>
android UI小知识点
查看>>
Android之TelephonyManager类的方法详解
查看>>
Android 获取屏幕的分辨率
查看>>
android raw读取超过1M文件的方法
查看>>
ubuntu下SVN服务器安装配置
查看>>
MPMoviePlayerViewController和MPMoviePlayerController的使用
查看>>
CocoaPods实践之制作篇
查看>>
[Mac]Mac 操作系统 常见技巧
查看>>
苹果Swift编程语言入门教程【中文版】
查看>>
[转载]CSDN精选iPhone开发博客
查看>>
捕鱼忍者(ninja fishing)之游戏指南+游戏攻略+游戏体验
查看>>
iphone开发基础之objective-c学习
查看>>
iphone开发之SDK研究(待续)
查看>>
计算机网络复习要点
查看>>
Variable property attributes or Modifiers in iOS
查看>>
NSNotificationCenter 用法总结
查看>>
C primer plus 基础总结(一)
查看>>
微服务相关问题(一)
查看>>
剑指offer算法题分析与整理(一)
查看>>