您好我正在开发小型Android应用程序,其中我正在使用接近警报。所以一切都很好。现在,一旦输入事件触发我想做什么我想删除该警报。怎么做?我可以在广播接收器或其他地方做吗? 我的代码看起来像。
// in abc class
PendingIntent proximityIntent = PendingIntent.getBroadcast(
context, 0, intent,
PendingIntent.FLAG_CANCEL_CURRENT);
locationManager.addProximityAlert(
latitude,
longitude,
POINT_RADIUS,
PROX_ALERT_EXPIRATION,
proximityIntent );
// this is broadcast receiver
public void onReceive(Context context, Intent intent) {
String key = LocationManager.KEY_PROXIMITY_ENTERING;
Boolean entering = intent.getBooleanExtra(key, false);
if (entering)
{
// here I want to stop this alert... ANy solution how to stop this
}
else
{
}
}
怎么做?需要帮忙。谢谢。
答案 0 :(得分:0)
使用LocationManager。 removeProximityAlert(的PendingIntent)。只需将传递给addProximityAlert的意图传递给它。如果您现在没有保存,则必须将其保存到活动/服务中的变量。
答案 1 :(得分:0)
根据我的经验,待定意图有不同的标志:
PendingIntent proximityIntent = PendingIntent
.getBroadcast(
NotificationService.this,
0,
intent,
PendingIntent.FLAG_ONE_SHOT);
当看到,丢弃或使用通知时,我得到了这个代码:
((NotificationManager) getSystemService(NOTIFICATION_SERVICE))
.cancel(NOTIFICATION_ID);
其中代码中的通知ID为0。 第一个选项是停止警报,其次是从通知菜单中将其关闭。