簡體   English   中英

是否可以在打盹模式或應用程序待機期間運行 Android 定期和一次性工作人員?

[英]Is it possible to run an Android Periodic and Onetime workers during Doze Mode or App Standby?

我有一個應用程序,它使用定期和一次性工作人員來執行各種任務,其中一些需要網絡連接。 我的客戶向我報告說,在他根本不使用該應用程序的那一天,他沒有執行某項必需的日常任務。 盡管應用程序在某一天沒有運行,但工作人員仍然需要運行才能向后端服務器報告各種統計信息。 我認為這是因為該應用程序一整天都處於應用程序待機模式,並且設備至少在一天中的部分時間處於打盹模式。 所以我的問題是,是否可以在應用程序處於應用程序待機或打盹模式時讓定期或一次性工作人員運行,還是會一直延遲到設備和/或應用程序喚醒?

或者,我是否會更好地使用警報而不是工人? 我看到可以使用setExactAndAllowWhileIdle()設置警報,“即使系統處於低功耗空閑模式也將被允許執行”。 “空閑模式”是否意味着打盹和/或應用程序待機模式?

我一直在努力解決這個問題,因此非常感謝任何幫助和/或指導。

當工作的約束得到滿足時,工作管理器是可推遲的后台工作。 如果 WorkRequest 上設置的所有約束都得到滿足,Work 仍然可以運行,但會有一些額外的延遲。 這是因為 WorkManager 尊重 Android 電池優化策略。 此外,您可以在此處閱讀有關 WorkManager 約束的更多信息以了解工作的約束: https://developer.android.com/reference/androidx/work/Constraints.Builder.ZFC35FDC70D5FC69D269883A82EZ7

暫無
暫無

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

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