OnePlus Watch 2 屏幕关闭后应用程式强制停止和警示移除问题解决
2024-03-05 07:54:52
OnePlus Watch 2:屏幕关闭时强制停止应用程序和取消警报问题
作为一位经验丰富的程序员和技术作家,我在OnePlus Watch 2上使用Wear OS 4/Android 13时遇到了一些奇怪的问题。当关闭应用程序活动并让手表屏幕关闭时,它会强制停止我的应用程序并取消所有计划的警报。
问题
这个问题体现在以下方面:
- 应用程序强制停止: 关闭应用程序的活动并关闭手表屏幕后,应用程序会立即强制停止。
- 警报取消: 通过
setExactAndAllowWhileIdle()
和setAlarmClock()
调度的所有计划警报都会从待处理警报中移除。
在 LogCat 中,我可以看到以下日志:
ActivityManager system_server Force stopping <my package name> ....
ActivityManager system_server Killing 31668: <my package name> ....
CarrierSvcBindHelper com.android.phone onHandleForceStop: [<my package name>]
ActivityManager system_server Got obituary of 31668:<my package name>
解决方法
经过一番探索,我找到了解决此问题的两种方法:
1. 将应用程序添加到电池优化白名单
转到“设置”>“电池”,找到我的应用程序,然后将其添加到“优化”白名单中。
2. 使用作业调度器
我使用作业调度器在屏幕关闭后计划一个作业,该作业会唤醒我的应用程序并重新安排警报。
结论
通过这些解决方法,我能够解决 OnePlus Watch 2 上应用程序强制停止和警报取消的问题。这些方法可能不是理想的解决方案,但它们为我有效。我希望随着 Wear OS 4/Android 13 的进一步开发,OnePlus 会解决这个问题并提供更可靠的方式来安排警报。
常见问题解答
1. 这个问题是不是Wear OS 4/Android 13中的新行为?
我不确定这是 Wear OS 4/Android 13 中的新行为,还是 OnePlus Watch 2 中的错误。
2. 为什么应用程序在屏幕关闭后会强制停止?
这可能是为了提高电池续航时间而进行的系统优化。
3. 有没有更好的解决方法?
目前还没有更好的解决方法,但随着 Wear OS 4/Android 13 的进一步开发,可能会出现更好的解决方案。
4. 这个问题是否影响所有应用程序?
这个问题似乎只影响在屏幕关闭时使用计划警报的应用程序。
5. 如何确定我的应用程序是否受到这个问题的影响?
您可以通过关闭应用程序活动并让手表屏幕关闭来测试您的应用程序。如果您的应用程序强制停止并取消了警报,那么它很可能受到了此问题的影响。