随着新增加的“始终在”api在最近更新的android磨损,自然我试图将它纳入到我的健身应用程序。在android开发者的网站上做了大量阅读之后,似乎在环境模式下唤醒处理器的唯一方法是使用警报管理器。然而,这种方法并不十分一致或准确。
1)当警报设置为唤醒处理器并在3秒后改变屏幕上的时间时,它会在5-10秒之间反弹。
2)大多数情况下,方法onEnterAmbient()甚至在环境模式出现大约一分钟后才被调用(处理程序仍在以正常频率运行和更新屏幕)。
3)总的来说,如果有人知道在环境模式下将更新推送到屏幕上的方式不同,那就太棒了!(我主要相信还有另一种方法,因为在环境模式下,每秒钟都能更新和显示动画。)
发布于 2015-10-27 11:03:35
通过使用wake锁,您可以保持处理器在环境模式下运行:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "awake");
wl.acquire(30000); // with 30s timeout or manually via wl.acquire() wl.release()但在环境模式下,你必须考虑到增加功率的使用,这不是个好主意。
https://stackoverflow.com/questions/32140509
复制相似问题