Cem*_*mre 1 android release wakelock
我像onCreate方法一样得到唤醒锁,它工作正常(我也设置了权限):
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Wake lock");
wl.acquire();
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试释放它时:
@Override
protected void onDestroy()
{
super.onDestroy();
wl.release();
}
Run Code Online (Sandbox Code Playgroud)
由于某种原因它没有被释放.这怎么可能 ?有任何想法吗 ?
编辑:我有一个退出按钮,调用finish()然后调用onDestroy().当我按下退出按钮,然后让手机进入睡眠状态时,我希望我的程序无法正常工作,但它有效,这表明锁定未发布
确定您的WakeLock释放代码是否有效的正确方法是adb shell dumpsys power在发布之前和之后使用,以查看是否WakeLock已发布.由于其他应用程序可以随时请求和获取WakeLocks,其他随意检查(例如,当我的应用程序在屏幕关闭时运行?)将是不可靠的.
| 归档时间: |
|
| 查看次数: |
4386 次 |
| 最近记录: |