【发布时间】:2018-01-08 09:47:08
【问题描述】:
我正在尝试在我的应用程序中使用地理围栏。 到目前为止,我已经成功,并且当应用程序运行时它可以完美运行 在前台。 我正在检查具有 google play 服务的 Android Emulator。 为了检查这一点,我正在设置位置参数,正如我所说 当应用程序在前台时它工作正常。
但是当应用程序在后台时,似乎转换 在我打开应用程序或打开 Google 地图应用程序之前不会触发。
所以我尝试使用 BroadcastReceiver 而不是 IntentService 我已经在清单文件中注册了广播接收器 像这样:
<receiver android:name = ".GeofenceReceiver"
android:exported = "true"
android:enabled = "true"
/>
但我仍然有相同的结果..
那么当应用程序在后台时如何触发地理围栏转换?
我考虑过在服务中使用LocationServices.FusedLocationApi.requestLocationUpdates。因此,通过这种方法,我的应用程序将询问位置
更新,这可能会触发地理围栏转换。
但它可能会消耗电池,这是一种不好的做法。 那么,还有其他选择吗?
【问题讨论】:
标签: android android-geofence android-fusedlocation google-location-services