Android-华为-解锁广播延迟收到问题

2021-12-31 17:45:49 +08:00
 wiikzz

最近在练习 Android 广播的时候,写了一个测试 app ,监听亮屏,灭屏与解锁广播。BroadcastReceiver 是动态注册的,在 Application 中进行。收到广播后,弹一个 Toast 。

在我的这台华为( DVC-AN00, HMOS 2.0.0 )安装运行,灭屏解锁,正常弹 Toast 。 但在我拔掉 USB ,灭屏 3 ,5 分钟后,再解锁,无任何反应,没有 Toast 。(等个一段时间)然后我插上 USB 看日志,这时刷刷刷的弹 Toast 。

换一台小米手机( MI 9 SE, Android 10 )安装运行,与上面场景一样,Toast 弹出正常,中间也尝试过等比较长时间,也是正常的,就华为手机不正常。

很奇怪的现象,有哪位大神知道原因不?不胜感激。

4084 次点击
所在节点    Android
4 条回复
gam2046
2021-12-31 17:56:42 +08:00
系统限制了自启动,基本上能够变相实现自启动的广播,包括但不限于电量、时间、信号、屏幕变化等,国内各种 UI 都进行了限制。需要用户手动设置为不限制后台活动。
sdushn
2021-12-31 17:57:21 +08:00
机型问题一般需要看不同 os 源码来定位了,比较麻烦。这个场景下 app 一直在后台吧?可能需要考虑后台保活
wiikzz
2021-12-31 18:05:48 +08:00
@sdushn 就 3 ,5 分钟,应用在后台是活着的。后台打 Log 发现,他是解锁广播根本就没有下发到我的 br ,直到我插上 USB 或者打开应用的那一刻,我的这 br 就一下子收到亮屏、解锁广播。
kokutou
2022-01-02 11:57:21 +08:00
防止解锁就自启的。
以前一解锁,各大流氓就开始更新拉推送,解锁就掉帧。导致手机卡的一笔的印象,什么破垃圾收集。
把省电什么设置都关了试试吧。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/825561

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX