我是Android的新手并开发了一个后台服务,可以跟踪此人是在某个区域的某个半径范围之内还是之外(固定的纬度/长坐标)。
电池很关键,我不需要实际位置(粗略位置)。如果事件在实际进入/退出几分钟后交付,这很好,因为我只需要一个入口通知和一个退出通知
我不希望警报管理器每10分钟触发一次,以检查当前位置,因为这会耗尽电池电量。 有没有办法以最小的电池消耗实现这一点,并且最好没有用户打开GPS(消耗电池)?
答案 0 :(得分:1)
看起来您可以构建GeoFence并发送有关GeoFence转换的通知。请参阅此文档: https://developer.android.com/training/location/geofencing.html
答案 1 :(得分:0)
它被称为地理围栏。开发人员网站上有good article。但它需要GPS(FINE_LOCATION)。
另一个解决方案:实现自己的Geofence-like"框架",但使用网络数据(COARSE_LOCATION),而不是GPS。是的,它需要定期轮询位置。减少电池消耗的方法是减少轮询频率。您也可以使用优先级较低的location updates listener。