簡體   English   中英

屏幕關閉時后台服務未運行

[英]Background service not running when screen is off

我正在使用WakeLock,但它會消耗大量電池。 有其他替代解決方案嗎?

WakeLock的整體思想是允許設備運行一些代碼,而不是進入睡眠模式。 無論您采用什么方式來防止設備進入休眠狀態,都會消耗電池電量。 據我所知,“屏幕關閉”時運行代碼的唯一方法是使用WakeLock

Android OS在功耗方面非常激進,除非您明確要求在設備進入省電模式時運行應用程序,否則它將“暫停”您的應用程序進程。


因此,如果您認為必須一直運行代碼,則應該消耗電池電量。 如果應用程序消耗過多的電池,請考慮更改設計和/或決定應用程序運行的頻率和時間,尤其是在設備嘗試進入節能模式時。

您可以使用infinite loop在服務內部實現thread ,但是當您停止服務時不要忘記釋放您已在服務中使用的所有資源,因為android不會幫您這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM