android 关闭屏幕

息屏
public void screenOff(Context context, Activity activity){
	DevicePolicyManager policyManager = (DevicePolicyManager)activity.getSystemService(Context.DEVICE_POLICY_SERVICE);
	ComponentName adminReceiver = new ComponentName(context, ScreenOffAdminReceiver.class);
	boolean admin = policyManager.isAdminActive(adminReceiver);
	if (admin) {
		policyManager.lockNow();
	}else{
		Toast.makeText(context,"没有设备管理权限",Toast.LENGTH_LONG).show();
	}
}
1、创建个DeviceAdminReceiver实例
息屏主要使用的是DevicePolicyManager 类,此外ScreenOffAdminReceiver是一个息屏管理的广播接收器,
该接受器非常重要,系统设置中正是通过该接收器才找到的应用程序,
因此,还需要在**设置-->安全-->设备管理器,激活相对应应用的设备管理器**
public class ScreenOffAdminReceiver extends DeviceAdminReceiver {
	@Override
	public void onEnabled(Context context, Intent intent) {
		Log.d("1234", "设备管理器使用");
	}
	@Override
	public void onDisabled(Context context, Intent intent) {
		Log.d("1234", "设备管理器没有使用");
	}
}
2、在res下创建目录xml,在xml下创建文件device_admin.xml
<?xml version="1.0" encoding="utf-8"?>
<device-admin xmlns:android="http://schemas.android.com/apk/res/android" >
	<uses-policies>
		<limit-password />
		<watch-login />
		<reset-password />
		<force-lock />
		<wipe-data />
	</uses-policies>
</device-admin>
3、在AndoirdManifest.xml注册ScreenOffAdminReceiver
<receiver
	android:name=".ScreenOffAdminReceiver"
	android:label="@string/app_name"
	android:permission="android.permission.BIND_DEVICE_ADMIN" >
	<meta-data
		android:name="android.app.device_admin"
		android:resource="@xml/device_admin" />
	<intent-filter>
		<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
	</intent-filter>
</receiver>
4、在AndoirdManifest.xml添加权限
<uses-permission android:name="android.permission.USES_POLICY_FORCE_LOCK" />

亮屏
public void screenOn(Context context, Activity activity) {
	Log.d("1234", "screenOn");
	PowerManager mPowerManager = (PowerManager) activity.getSystemService(context.POWER_SERVICE);
	PowerManager.WakeLock mWakeLock = mPowerManager.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "tag");
	mWakeLock.acquire();
	mWakeLock.release();
}
<uses-permission android:name="android.permission.WAKE_LOCK" />

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值