我使用google简单代码“创建和监控Geofences”并且每件事情都运行良好但我有一个问题,当设备丢失gps信号第二次触发事件将计为此退出,并且当信号返回将计数输入
即使它仍然在Geofence里面,我想我无法避免这种情况 所有人都知道这种行为是否可以被抑制?
另外一个问题,我在stackoverflow地理围栏问题中读到很多问题,使用BroadcastReceiver比Service更好地接收转换 现在我使用服务接收并且工作正常,是否有必要将其更改为BroadcastReceiver?
答案 0 :(得分:0)
这是Google Geofence有时依赖错误的网络位置点的问题。我有一个潜在的解决方案here。它不是100%,但它确实有助于抑制地理围栏的跳跃。
关于问题的第二部分,我不知道您是指IntentService还是仅仅是服务。如果是服务,我建议使用IntentService或BroadcastReceiver。 IntentServices主要用于在后台线程上执行任务,其中BroadcastReceivers用于重新启动进程(如果它没有被用户强制终止),并执行快速任务来处理意图。这两个都是自包含的,并在任务完成后立即销毁。但要回答你的问题,不,你没有 使用BroadcastReceiver,但最好这样做。