我收到的报道说我的应用程序正在排出电池,但仅在HTC上令人难以置信

StackOverflow https://stackoverflow.com/questions/2898350

  •  04-10-2019
  •  | 
  •  

是否有人注意到HTC令人难以置信的特定行为可能导致应用程序使设备保持清醒和忙碌?我收到报告说,我的应用程序负责保持设备清醒并排干电池,但仅来自HTC令人难以置信的用户。

我的应用程序响应了可能相关的许多意图。它具有从引导开始的服务,并且还响应网络连接的变化。我确实使用了Wakelock,但是我要在处理完成后要谨慎地释放它,无论我是否完成了几分钟后,Wakelock Times都会出来。

我听说令人难以置信的可能存在一些连通性问题,或者其中一些人遇到了问题。难道网络经常上下上下,触发我的应用程序吗?

还有其他想法吗?我要求用户将他们的日志发送给我与Alogcat。如果他们愿意,那可能有助于缩小事业的范围。

有帮助吗?

解决方案 2

问题似乎是我正在获得非常快速的网络连接性变化意图。比我对机器人见过的更多。我认为我将不得不在网络连接性更改上设置定时警报,以便我只能在网络稳定一定时间稳定时尝试处理。

我还发现,在快速网络状态更改后,我的代码可能无法释放尾锁。唤醒锁仍在定时,但是到那时,我经常收到更多的网络状态更改。

我已经解决了后一个问题,与此同时,我关闭了我的应用程序的网络状态意图,因为它们并不重要。

其他提示

如果网络经常更改,您将运行很多。
您正在关闭服务吗?您的服务是在工作线程上运行的(默认情况下不是)。设备入睡时,您需要响应网络更改吗?顺便说一句 - 在启动时运行 - 一旦收音机在网络更改上升起后,您可能会在启动后进行第二次运行。放一些日志,看看重新启动后实际运行了多少次。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top