1,配置清单文件.注册广播

!--*****************************************超级管理员注册******************-->                    android:name=".AdminReceiver"            android:description="@string/sample_device_admin_description"            android:label="@string/sample_device_admin"            android:permission="android.permission.BIND_DEVICE_ADMIN">                            android:name="android.app.device_admin"                android:resource="@xml/device_admin_sample" />            <intent-filter>                android:name="android.app.action.DEVICE_ADMIN_ENABLED" />            intent-filter>        
2,看着清单文件来,缺什么加什么

  1)需要一个广播接收者,可直接继承,空着就OK

package steaywengwu.android.com.myapplication;import android.app.admin.DeviceAdminReceiver;/** * Created by steaywengwu on 2017/2/24. * 超级管理员权限 */public class AdminReceiver extends DeviceAdminReceiver {}
  2)添加 xml/device_admin_sample.xml文件

xmlns:android="http://schemas.android.com/apk/res/android" >                                                                        

package steaywengwu.android.com.myapplication;import android.app.admin.DevicePolicyManager;import android.content.ComponentName;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;/** * 超级管理员 * 设置>安全>设备管理器>激活 */public class Main3Activity extends AppCompatActivity {    private DevicePolicyManager dpm;    private Button button;    private ComponentName componentName;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main3);        dpm = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);        button = (Button) findViewById(R.id.button);        componentName = new ComponentName(this,AdminReceiver.class);    }    public void onclick(View view) {        if (dpm.isAdminActive(componentName)) {//判断超级管理员是否已激活            dpm.lockNow();//锁屏        } else {            activeAdmin();//跳转激活页面,让用户激活,        }    }    /*    激活管理员页面     */    public void activeAdmin() {        Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);        intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,                componentName);        intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,                "请激活超级管理员");        startActivity(intent);    }}
超级管理员权限APP,手动是删不掉的,必须要先手动移除手机超级超级管理员,例如:设置>安全>设备管理器....然后移除你添加的超级管理员

//dpm.wipeData(0);//擦出数据功能

//dpm.removeActiveAdmin(componentName);//移除超级管理员操作























更多相关文章

  1. CreateProcess error=2, 系统找不到指定的文件。
  2. 【Android】Android Layout Binder——根据layout布局文件自动生
  3. android:向手机卡上写入文件时总是不成功,解决办法
  4. 在android中使用HttpURLConnection进行文件上传
  5. 转:Android文件操作总结
  6. 【Android的从零单排开发日记】之入门篇(十)——Android应用配置文
  7. 关于android单元测试结合SAX解析xml文件初步分析
  8. android app 缓存 ---- android 文件缓存使用流程解析
  9. 如何在Android上显示wmf的文件

随机推荐

  1. Java侵权诉讼Google获胜,Android厚积薄发
  2. Android下的Java之interface接口泛型 动
  3. Android上面搭建 Opencv的开发环境+摄像
  4. Android调用WCFRest
  5. 【Android】高德定位错误总结
  6. 【Android快捷开发笔记系列】——Data Bi
  7. Android中AsyncTask的处理后台耗时操作(如
  8. Android开发的硬件加速
  9. Android平台实现双向证书(https)验证简单
  10. 【android x86 5.1】system/core/目录下R