我正在将新的地理围栏 API 添加到我的 Android 应用程序中,并且我想使用 BroadcastReceiver 来捕捉转换。我尝试使用 BroadcastReceiver 而不是 IntentService 运行地理围栏,但根本不会调用 BroadcastReceiver。我用 IntentFilter 正确注册了 BroadcastReceiver。这是我的绑定功能:
private PendingIntent getTransitionPendingIntent() {
if(transitionPendingIntent == null) {
Intent intent = new Intent(context, GeofenceListener.class);
intent.setAction(GeofenceUtil.ACTION_TRANSITION_OCCURED);
return PendingIntent.getBroadcast(
context,
0,
intent,
PendingIntent.FLAG_UPDATE_CURRENT
);
}
else
return transitionPendingIntent;
}
有人能告诉我为什么没有触发 BroadcastReceiver 吗?为什么它适用于 IntentService 而不是 BroadcastReceiver?