【发布时间】:2010-01-13 17:13:30
【问题描述】:
我在我的应用程序中使用唤醒锁来防止手机在应用程序可见时休眠。
当方向发生变化并且系统在横向模式下销毁并重新创建应用程序时,就会出现问题。如果唤醒锁定时器在后台超时,系统会以释放唤醒锁为契机关闭屏幕。
编辑:我应该提到我正在设置 Wakelock onResume,并释放 onPause - 据我了解,有必要释放然后以防止应用程序泄漏唤醒锁。
我需要唤醒锁来继续改变方向。
下面我概述了一个解决方案。这是处理它的首选方式吗?是否有其他选择?
创建一个持有唤醒锁(而不是活动)的服务,当活动解除绑定时,服务会启动一个倒数计时器(例如 10 秒),如果活动没有重新绑定,它会在计时器到期时释放唤醒锁。如果是简单的方向更改,则 Activity 将在 10 秒内重新绑定并保持唤醒锁,如果没有,唤醒锁将被释放。
谢谢。
【问题讨论】:
标签: android service android-activity orientation