java - 如果我可以直接在服务中处理唤醒锁,那么拥有 WakefulBroadcastReceiver 有什么意义?
问题描述
我Service
过去通过扩展类在后台执行一些工作Thread
。
我可以在服务开始时获取 wakeLock:
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
"MyApp::MyWakelockTag");
wakeLock.acquire();
然后wakelock.release()
在方法中或线程内方法onDestroy()
的末尾。run()
那么有人可以向我解释一下这个的效用吗?
解决方案
推荐阅读
- r - Stan 代码工作正常,但在 Linux 集群上失败
- google-apps-script - App script check if a column contains a certain word write date to specific column
- ios - 如何在swift 4中制作带有多行itemTitle的UITabBar
- javascript - 我可以将联系人列表中与 ID 匹配的嵌入数据显示为 Qualtrics 调查中的链接吗?
- go - 如果我的接收器正常工作,为什么我有“未发送的消息”?
- matlab - 如何在 Matlab 中标记(或)遮蔽曲面图下方的区域?
- java - 使用 HttpUrlConnection 的 Java 类抛出 IOException,无法读取或写入
- react-native - 用于在 React Native 项目中管理状态以提高效率和 95% 更简洁代码的模式
- excel - 直接运行时禁用 Excel 宏
- javascript - mousedown 事件时忽略滚动条