BOOT_COMPLETED如果设备在启动后很快就没有使用,则接收器不会触发

时间:2018-05-03 08:37:55

标签: android broadcastreceiver bootcompleted

好的,我在两部手机上测试我的Android应用程序。三星Galaxy s6和s4。前者为Android版本7,后者为5版。

我遇到的问题似乎是运行Android版本5的galaxy s4所独有。我的应用程序需要在系统启动后运行一些代码,所以很明显他们有一个boot_completed接收器。它在我的galaxy s6上运行正常,但在s4上,如果启动后屏幕关闭,启动完成的接收器不会运行。如果我在启动后立即使用手机就可以了,但是如果我启动它并且在使用之前将手机屏幕关闭一段时间,则接收器不会运行。所以基本上看起来如果手机处于睡眠状态,它应该在启动完成的接收器时运行。它不是简单地被推迟,直到我重新开启屏幕,它永远不会被解雇。

我很幸运找到了这个问题的例子,以及如何通过谷歌解决这个问题。我很长一段时间都是一名程序员,但我对android很缺乏经验。因此,如果有人知道问题是什么或关于如何最好地修复它的想法,将非常感激。

如果我在启动后的前几分钟使用手机,启动完成的接收器运行正常,但如果我没有,则它永远不会启动。它似乎完全错过了。如果我在启动后的几分钟内没有再次开始使用手机,它就无法运行。它最终永远不会运行。如果我在首次启动后的几分钟内使用手机,它才能正常工作。否则,它永远不会运行。

我知道有一些功能可以在Android 7中启动时运行代码,启动时锁定屏幕,locked_boot_completed等等。但奇怪的是我没有在我的android 7设备上遇到问题,而且我的理解是这个功能不适用于Android 5,我遇到了这个问题。如果它只是在早期版本的Android中没有用锁定屏幕广播boot_completed的情况,我想知道是否有人知道解决问题的方法。

0 个答案:

没有答案