繁体   English   中英

WakeLock仅在充电时打开屏幕

[英]WakeLock turns screen on only when charging

我编写了一个简单的倒数计时器应用程序,每当倒数结束时,我将使用以下代码打开屏幕,振动并播放警报声:

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Vibrator v = (Vibrator) mContext.getSystemService(Context.VIBRATOR_SERVICE);
RingTone r = RingtoneManager.getRingtone(mContext, notification);
WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK|PowerManager.ACQUIRE_CAUSES_WAKEUP, "Countdown Timer");

wl.acquire(1000);

v.vibrate(pattern, -1);     
r.play();

尽管这在手机充电时效果很好,但是当我断开充电器的连接时,唤醒锁不会打开屏幕,并且使用电源按钮手动打开屏幕时只会产生振动和警报。

当我在其他设备上进行测试时,似乎工作正常。

有什么想法吗?

您的代码wl.acquire(1000); 将在1秒后释放唤醒锁。 试试这个代码:

wl.acquire();
v.vibrate(pattern, -1);     
r.play();
w1.release();

我正在使用这个效果很好

// set up wakelock
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
WakeLock wakelock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "DoNotDimScreen");
wakelock.acquire();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM