用于跟踪用户位置的高效后台服务

nil*_*ash 5 service android geolocation batterylevel

我正在开发一个小型Android应用程序,我希望在其中具有Geolocation功能.我想要编码的是一种服务,它提供用户的更新位置,无论他们是否正在使用我的应用程序.

我知道,如果我不断检查用户的位置,它会耗尽设备的电池,所以我想要很好的解决方案.例如,每隔5或10分钟给我更新一次.我已经阅读了很多这个问题,但我想得到一个好的解决方案.

我读了这个页面,如果用户正在使用我的应用程序,但如果用户没有使用我的应用程序那么这是一个很好的解决方案,那么我该怎么办?我该如何解决这一挑战?

Luc*_*fer 10

以前我开发过这种应用程序.根据您的要求,您将需要Android的以下API.

  • 位置(Lat-lon信息)
  • AlarmManager(安排事件定期获取lat-lon详细信息并将数据上传到远程服务器)
  • Http(用于向远程服务器发送lat-lon详细信息的API)
  • Android服务(允许在后台工作)
  • BroadcastReceiver(另外,如果您想在设备启动时自动启动应用程序)