gpt4 book ai didi

Android Gps Tracker 没有及时更新

转载 作者:行者123 更新时间:2023-11-30 00:37:54 28 4
gpt4 key购买 nike

我有一个已经存在多年的开源 gps 跟踪应用程序。最近,我一直在提示,在 android nougat 中,人们不是每分钟获取一次更新,而是当手机拔下时每五分钟从手机获取一次更新.

尽管我们尝试将其关闭,但节电模式仍有问题。

有没有办法强制手机在拔下电源时在指定时间获取 GPS 更新?

这是代码,如果有人想看的话,但我不认为这是代码的问题。多年来一直非常稳定。

https://github.com/nickfox/GpsTracker/blob/master/phoneClients/android/app/src/main/java/com/websmithing/gpstracker/LocationService.java

谢谢。

最佳答案

Android 7/Nougat 的一个变化是 Doze 现在“更具侵略性”。在 Android 6/Marshmallow 中,休眠模式在屏幕关闭、设备依靠电池运行且静止不动时启动。

(这记录在 Optimizing for Doze and App Standby 中)

enter image description here

现在在 Android 7 中,条件只是屏幕关闭并使用电池运行。

(这记录在 Android 7.0 Behavior Changes 中)

enter image description here

如果应用程序破坏了它的核心功能,则可以将它们列入白名单以免受限制。在您的情况下,他们这样做是因为 GPS 跟踪器需要实时记录坐标。

有一个列表 Acceptable Use Cases for Whitelisting

这包括:

Task automation app | App's core function is scheduling automated actions, such as for instant messaging, voice calling, new photo management, or location actions.

用户可以在设备设置中自行手动将应用列入白名单,也可以由应用请求加入白名单并由用户批准或拒绝。

这包含在 Support for Other Use Cases

引用:

  • An app can fire the ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS intent to take the user directly to the Battery Optimization, where they can add the app.

  • An app holding the REQUEST_IGNORE_BATTERY_OPTIMIZATIONS permission can trigger a system dialog to let the user add the app to the whitelist directly, without going to settings. The app fires a ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS Intent to trigger the dialog.

  • The user can manually remove apps from the whitelist as needed.

最后一点当然很重要,但幸运的是可以通过编程方式检查白名单状态:

An app can check whether it is currently on the exemption whitelist by calling isIgnoringBatteryOptimizations().

因此,处理 Doze 模式至少是一回事。

另一个问题是保持服务正常运行。但是服务被系统杀死可能会导致更随机的时间间隔。当然还有像using START_STICKY这样的经典之作。或 running as a foreground service .

关于Android Gps Tracker 没有及时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43111336/

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