700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > android设置管理员权限设置 android 获取超级管理员权限 进行锁屏 恢复出厂设置...

android设置管理员权限设置 android 获取超级管理员权限 进行锁屏 恢复出厂设置...

时间:2021-01-10 00:34:37

相关推荐

android设置管理员权限设置 android 获取超级管理员权限 进行锁屏 恢复出厂设置...

获取超级管理员权限步骤:

1.创建 MyAdmin 的广播接受者 继承 DeviceAdminReceiver

如:

package cn.itcast.lockscreen; import android.app.admin.DeviceAdminReceiver; public class MyAdmin extends DeviceAdminReceiver { }

配置如下:

android:resource="@xml/my_admin" />

添加Xml文件:

my_admin.xml

2.获取IDevicePolicyManager

Method method = Class.forName("android.os.ServiceManager")

.getMethod("getService", String.class);

IBinder binder = (IBinder) method.invoke(null,

new Object[] { Context.DEVICE_POLICY_SERVICE });

mService = IDevicePolicyManager.Stub.asInterface(binder);

3.注册广播接受者为admin设备

ComponentName mAdminName = new ComponentName(this, MyAdmin.class);

if (mService != null) {

if (!mService.isAdminActive(mAdminName)) {

Intent intent = new Intent(

DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);

intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,mAdminName);

startActivity(intent);

}

}

示例代码:

LockscreenActivity.java:

package cn.itcast.lockscreen;

import android.app.Activity;

import android.app.admin.DevicePolicyManager;

import ponentName;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

/**

* device admin : 获取设备的超级管理员权限

*

* @author zehua

*

*/

public class LockscreenActivity extends Activity implements OnClickListener {

private Button bt_lock;

private Button bt_wipe;

DevicePolicyManager manager;

ComponentName mAdminName;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

bt_lock = (Button) this.findViewById(R.id.button1);

bt_wipe = (Button) this.findViewById(R.id.button2);

bt_lock.setOnClickListener(this);

bt_wipe.setOnClickListener(this);

// 获取IDevicePolicyManager

manager = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);

// 注册广播接受者为admin设备

mAdminName = new ComponentName(this, MyAdmin.class);

if (!manager.isAdminActive(mAdminName)) {

Intent intent = new Intent(

DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);

intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mAdminName);

startActivity(intent);

}

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.button1: // 锁屏

manager.resetPassword("123", 0);

manager.lockNow();

// manager.removeActiveAdmin(mAdminName);

break;

case R.id.button2: // 重置手机为出厂模式//外部数据不会被删除

manager.wipeData(0);

break;

}

}

}MyAdmin.java:

package cn.itcast.lockscreen;

import android.app.admin.DeviceAdminReceiver;

public class MyAdmin extends DeviceAdminReceiver {

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。