Manifest.xml
<receiverandroid:name=".device"android:permission="android.permission.BIND_DEVICE_ADMIN"><meta-dataandroid:name="android.app.device_admin"android:resource="@xml/device_admin" /><intent-filter><actionandroid:name="android.app.action.DEVICE_ADMIN_ENABLED" /></intent-filter></receiver>
权限文件
<?xml version="1.0" encoding="utf-8"?><device-adminxmlns:android="http://schemas.android.com/apk/res/android"><uses-policies><limit-password /><!-- 限制密码类型 --><watch-login /><!-- 监控登录尝试 --><reset-password /><!-- 重置密码 --><force-lock /><!--锁屏 --><wipe-data /><!-- 恢复出厂设置 --></uses-policies></device-admin>
mainAcitvity.java
package t.t;import android.app.Activity;import android.app.admin.DevicePolicyManager;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.View;public class mainActivity extends Activity {    DevicePolicyManager devicePolicyManager;    ComponentName componentName;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        devicePolicyManager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);        componentName = new ComponentName(mainActivity.this, device.class);    }    // 激活程序    public void btnjihuo(View v) {        if(!devicePolicyManager.isAdminActive(componentName)) {            Intent intent = new Intent(                    DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);            intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,                    componentName);            intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "提示文字");            startActivityForResult(intent, 1);        }    }    // 移除程序 如果不移除程序 APP无法被卸载    public void btnxiezai(View v) {        devicePolicyManager.removeActiveAdmin(componentName);    }    // 设置解锁方式 不需要激活就可以运行    public void btnszmm(View v) {        Intent intent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);        startActivity(intent);    }    // 设置解锁方式    public void btnmm(View v) {        // PASSWORD_QUALITY_ALPHABETIC        // 用户输入的密码必须要有字母(或者其他字符)。        // PASSWORD_QUALITY_ALPHANUMERIC        // 用户输入的密码必须要有字母和数字。        // PASSWORD_QUALITY_NUMERIC        // 用户输入的密码必须要有数字        // PASSWORD_QUALITY_SOMETHING        // 由设计人员决定的。        // PASSWORD_QUALITY_UNSPECIFIED        // 对密码没有要求。        Intent intent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);        devicePolicyManager.setPasswordQuality(componentName,                DevicePolicyManager.PASSWORD_QUALITY_NUMERIC);        startActivity(intent);    }    // 立刻锁屏    public void btnlock(View v) {        devicePolicyManager.lockNow();    }    // 设置5秒后锁屏    public void btnlocktime(View v) {        devicePolicyManager.setMaximumTimeToLock(componentName, 5000);    }    // 恢复出厂设置    public void btnwipe(View v) {        devicePolicyManager.wipeData(0);    }    // 设置密码锁    public void btnl(View v) {        devicePolicyManager.resetPassword("asdf",                DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY);        devicePolicyManager.lockNow();    }}
device.java
package t.t;import android.app.admin.DeviceAdminReceiver;import android.content.Context;import android.content.Intent;/** * @version 2012-9-27 上午09:25:21 **/public class device extends DeviceAdminReceiver {    @Override    public void onEnabled(Context context, Intent intent) {        // 设备管理:可用    }    @Override    public void onDisabled(Context context, Intent intent) {        // 设备管理:不可用    }    @Override    public CharSequence onDisableRequested(Context context, Intent intent) {        return "这是一个可选的消息,警告有关禁止用户的请求";    }    @Override    public void onPasswordChanged(Context context, Intent intent) {        // 设备管理:密码己经改变    }    @Override    public void onPasswordFailed(Context context, Intent intent) {        // 设备管理:改变密码失败    }    @Override    public void onPasswordSucceeded(Context context, Intent intent) {        // 设备管理:改变密码成功    }}




更多相关文章

  1. JAVA按钮显示用户名+密码
  2. SlidingMenu 用法(二)
  3. 自定义 照相机
  4. android 安全设置相关at流程分析
  5. android webview全屏显示html内容
  6. android 设置圆角图片实现代码
  7. android采用BroadcastReceiver实现定时器
  8. Dialog修改密码的显示方式小巧写法
  9. RadioButton+FrameLayout+Fragment实现底部导航

随机推荐

  1. Android切近实战(三)
  2. android animation之scale 缩放(仿微信加
  3. Android(安卓)正则表达式学习
  4. Android上掌纹识别第一步:基于OpenCV的6种
  5. android 键盘顶起布局底部
  6. 每天学习一个Android中的常用框架——3.O
  7. 关于android4.0.4中彩蛋的实现
  8. Android——SimpleAdapter的简单使用
  9. 算法移植优化(一)android 学习笔记
  10. Android(安卓)JetPack——Lifecycle