我正在尝试在Android应用中创建地理围栏。如果该应用程序正在运行(在模拟器中),我可以更改模拟器的经/纬度值,并得到应有的通知。
但是,如果应用程序已关闭并且我更改了经/纬度值,我将不再收到任何应有的通知。
这可能是由于使用仿真器设置纬度/经度值吗?我正在使用Android Studio中包含的模拟器。
在其他一些帖子中,我读到我在做Intent时应该使用广播接收器而不是服务,但这并没有改变任何东西:
private PendingIntent getGeofencePendingIntent() {
// Reuse the PendingIntent if we already have it.
if (mGeofencePendingIntent != null) {
return mGeofencePendingIntent;
}
final Intent intent = new Intent(this, GeofenceReceiver.class);
return PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
}
同样,如果应用位于前台,则广播接收器可以正常工作。
谢谢!