背景:Android應用出現在電池優化白名單,但實際上並不存在
我正在開發一個Android應用程序。當應用程序啓動時,它會使用isIgnoringBatteryOptimizations()
函數檢查是否將它從電池優化中排除。如果該功能返回false,則我使用REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
權限顯示「電池優化設置」屏幕,其中用戶需要將應用程序添加到白名單。
當我從Android Studio運行應用程序時,這一切都很完美。當我下載並安裝候選版本時,麻煩就開始了。
請注意,我將描述的問題只發生在我的兩部手機中的一部。 這個問題發生在運行Android 7.0的Sharp 507SH上。這個問題不會發生在運行Android 7.0的索尼SOV32上。
問題:
當我下載並安裝候選發佈版(沒有使用過Android Studio),並啓動應用程序,電池優化屏幕顯示爲正常。但是,該應用程序似乎已經列在「未優化」白名單中。通常用戶必須手動選擇應用並添加它。但它出現在列表中。所以用戶按下後退按鈕返回到應用程序,一切似乎都很好。 但是,該應用程序實際上並不在白名單中。這可以通過應用程序每次啓動時提示用戶來確認,即isIgnoringBatteryOptimizations()
仍然返回false。
我可以將應用程序添加到白名單「真實」首先進入電池設置並將其從白名單中刪除,然後將其添加回來。然後提示消失,因爲他們應該。