簡體   English   中英

當屏幕關閉時,Android 10 會阻止網絡請求和 GPS 呼叫

[英]Android 10 blocks network requests and GPS calls when screen is off

我制作了一個應用程序,它實際上每 15 分鍾將用戶位置發送到服務器。 這使用觸發下一個的警報管理器(一次)。 警報管理器觸發前台服務,負責獲取用戶位置並上傳到我的服務器。

當用戶與設備交互時,流程工作得很棒。 當屏幕關閉(鎖定)時,它會在一段時間內運行良好,后來它無法發送請求並獲取 GPS 數據。 所以我使用喚醒鎖打開屏幕 30 秒,以便設備退出打盹模式。

這種方法在 Android 8,9 中運行良好,但在 Android 10 中仍然失敗。 我什至也使用了 PowerManager.LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF 喚醒鎖,但仍然阻止了 HTTP 調用和 GPS 數據。 我實現了一個記錄器來保存存儲在文件中的每個動作。 我看到正在調用服務,但沒有觸發 GPS 數據。 還有一件事是,我使用Handler甚至Timer Task實現了一個Timer來處理位置超時,這樣我就可以在超時發生時發送其他數據,這有時會起作用,有時會失敗。

我怎樣才能解決這個問題? 有什么解決辦法。

注意:我使用警報管理器的原因是因為它們實際上是在設備處於瞌睡狀態時觸發的。 根據我的理解,工作經理適用於可以推遲的工作。 順便說一句,當應用程序關閉時,工作管理器在中文 Roms 中不起作用。

我也面臨同樣的問題,並通過禁用移動設備中的省電選項解決了這個問題。

暫無
暫無

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

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