gpt4 book ai didi

android - 电池优化白名单不会阻止 Doze 延迟我的应用程序

转载 作者:行者123 更新时间:2023-11-29 01:06:57 24 4
gpt4 key购买 nike

我的应用程序每 15 分钟向我的服务器发送一次 GPS 位置数据。此功能是应用程序的核心目的。

但是,当手机关机且不使用时,GPS 记录会逐渐消失。 GPS 记录之间的时间有一段时间是 15 分钟,然后是 1 小时、2 小时、4 小时、6 小时,然后当我移动手机或打开手机时又回到 15 分钟。

这似乎是由于 Android 6 中引入的打瞌睡模式所致。我将该应用程序添加到电池优化白名单中,但这并没有什么不同,despite the documentation claiming otherwise .

  1. 为什么白名单在这种情况下没有帮助?
  2. 我应该怎么做?会 Wakelock定期延迟,从而防止打瞌睡?

    // Request frequent location updates.
    Intent locationUpdateIntent = new Intent(this, StoreLocationService.class);
    locationUpdateIntent.setAction(MyAwesomeActionName);

    LocationRequest locationRequest = LocationRequest.create();
    locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
    locationRequest.setInterval(15 * 60 * 1000); // 15 minutes
    locationRequest.setFastestInterval(15 * 60 * 1000); // 15 minutes

    LocationServices.FusedLocationApi.requestLocationUpdates(
    mGoogleApiClient, locationRequest,
    PendingIntent.getService(this, 0, locationUpdateIntent, 0));

最佳答案

白名单允许网络但仍会阻止某些 CPU Activity 。使用 setAlarmAndAllowWhileIdle() 为列入白名单的应用授予 CPU 使用权。

本文档中提到了更多选项:

https://developer.android.com/training/monitoring-device-state/doze-standby.html#understand_app_standby

关于android - 电池优化白名单不会阻止 Doze 延迟我的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46188211/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com