如何定期在后台跟踪(如果可能)Android设备(最新版本?)>

问题描述 投票:1回答:1

前提

应该始终告知用户其敏感数据的使用(例如在后台收集位置),此问题旨在更好地了解有关Android使用位置和背景操作的最新限制。

问题

是否仍然可以(在Android最新版本上)创建位置跟踪服务,无论应用程序状态(前景/背景)还是设备状态(打ze睡或待机模式,应用程序存储桶),以便能够以一致的方式收集位置?

假设GPS和互联网连接已启用且可用,是否有可能每10分钟收集一次位置,或者设备进入休眠模式或待机状态总会在一段时间后限制应用程序的运行并推迟操作(例如网络操作),使其无法继续获取常规位置更新?

在最新的android版本上,从Android 8.0(API 26)]开始,引入了改善电池性能和保护用户隐私的新方法:

看起来是最佳选择:
  • 通知用户(通知)
  • 系统不会在几秒钟后终止服务(对于从API 26开始的后台服务而言]
  • 不太可能被系统停止(START_STICKY
  • 标志否则将重新启动)
  • 可以获取唤醒锁
  • 似乎仍然需要将该应用程序列入白名单,以避免电池优化,甚至需要禁用电池优化,才能停止/推迟服务。

    预期结果

例如每10分钟定期接收位置更新

前提应始终告知用户其敏感数据的使用(例如在后台收集位置),此问题旨在更好地了解最新引入的限制...

android background location power-saving
1个回答
0
投票

您必须在服务中使用FusedLocationProviderClient以指定的时间间隔或距离为您提供位置。如果选择距离,则还必须注意位置准确性。参见此article

© www.soinside.com 2019 - 2024. All rights reserved.