DevicePolicyManager类的使用
2016-04-30 14:47
393 查看
DevicePolicyManager是android2.2(API8)之后开始提供的一个API,通过使用该API,可用实现对系统级设备的管理。通过使用DevicePolicyManager 可以实现锁屏,恢复出厂,清除数据等功能。
step 1:
获取一个系统服务dpm = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);
step 2:
继承DeviceAdminReceiver类只要继承该类就可以,不需要重写父类的方法
public class MyAdmin extends DeviceAdminReceiver {
}
step3:
打开管理功能ComponentName name = new ComponentName(this, MyAdmin.class);
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, name);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, “权限已开启”);
startActivity(intent);
具体代码如下:
package com.zlb.lockscreen; 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; public class MainActivity extends Activity { DevicePolicyManager dpm; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); dpm = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE); } public void onclick(View view) { dpm.lockNow(); dpm.resetPassword("123", 0); // 清除SD卡数据 // dpm.wipeData(DevicePolicyManager.WIPE_EXTERNAL_STORAGE); // 恢复出厂设置 // dpm.wipeData(0); finish(); } public void open(View view) { ComponentName name = new ComponentName(this, MyAdmin.class); Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, name); intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "权限已开启"); startActivity(intent); } public void uninstall(View view){ ComponentName name = new ComponentName(this, MyAdmin.class); dpm.removeActiveAdmin(name); Intent intent=new Intent(); intent.addCategory("android.intent.category.DEFAULT"); intent.setAction(Intent.ACTION_DELETE); intent.setData(Uri.parse("package:"+getPackageName())); startActivity(intent); } }
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories