-1

我已经使用 IntentService 实现了后台位置跟踪。我能够在前台模式下接收位置点。但是当设备被锁定或应用程序被杀死一段时间后,我无法接收位置点。如何在后台跟踪设备位置时处理 Doze 和 AppStandby?

我不想一直运行前台服务。处理 Doze 和 AppStandby 的后台连续位置跟踪的任何解决方案?

4

2 回答 2

3

您可以根据 fused 文档实现自定义 locationlistener 或 FusedLocationProviderApi ( fused link )

融合位置提供者管理底层位置技术,例如 GPS 和 Wi-Fi。

我实现的场景与您的场景不完全相同,但如果互联网不可用,我有条件选择目标位置,因此,我实现了自己的侦听器,您可以从(此处)找到连接到绑定服务的侦听器。

您还必须使用后台服务来实现位置侦听器。对于打瞌睡,您可以为此应用程序以编程方式将其关闭。

于 2020-01-10T14:16:27.930 回答
0

如果您正在使用此链接中给出的 fusedLocationClient API,那么我要求您更改您的依赖项,使用 Google Play 服务,因为它们提供比 android 的 fusedLocation API 更可行和准确的位置。您可以在此处参考文档,它们还使用后台位置跟踪为您的问题提供了解决方案

于 2020-01-08T07:20:07.103 回答