我有一个启动服务的broadcastreceiver类。我想要发生的是当它启动服务时它也应该打开设备屏幕。我还没有找到实施的解决方案。我尝试扩展WakefulBroadcastReceiver
但它不会打开屏幕,而是如果设备已经打开则保持设备开启。有谁知道解决方案?
答案 0 :(得分:2)
尝试这种方法
public void turnScreenOn(Context context) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
@SuppressWarnings("deprecation")
WakeLock wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.ON_AFTER_RELEASE, "MyWakeLock");
wakeLock.acquire();
wakeLock.release();
}
需要许可
<uses-permission android:name="android.permission.WAKE_LOCK"/>