Android 警报没有取消

Android 警报没有取消,android,alarmmanager,Android,Alarmmanager,我正在一个活动中设置警报,并想在另一个服务类中取消警报。以下是我的代码: Intent intent = new Intent(SetAlarm.this, AlertFriend.class); PendingIntent pi = PendingIntent.getActivity(SetAlarm.this, unique_id, inent, PendingIntent.FLAG_UPDATE_CURRENT

我正在一个活动中设置警报,并想在另一个服务类中取消警报。以下是我的代码:

Intent intent = new Intent(SetAlarm.this, AlertFriend.class);
                PendingIntent pi = PendingIntent.getActivity(SetAlarm.this, unique_id, inent,
                        PendingIntent.FLAG_UPDATE_CURRENT);

                Calendar c1 = Calendar.getInstance();

                 c1.set(Calendar.HOUR_OF_DAY, hour);
                 c1.set(Calendar.MINUTE, min);
                 c1.set(Calendar.SECOND, 0);
                 c1.set(Calendar.MILLISECOND, 0);

                 AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
                alarmManager.set(AlarmManager.RTC_WAKEUP, c1.getTimeInMillis(), pi);
下面是我删除报警的地方(其中a是pi):


您是否已尝试完全卸载应用程序,然后重新安装,并测试警报是否可以取消?@“where a is pi”:变量
a
不能是
pi
。挂起的意图是
pendingent.getActivity()
的结果,而
a
在本例中是一个整数
requestCode
。设置此报警时,您确定
a
unique\u id
具有相同的值吗?
Intent intent = new Intent(context, AlertFriend.class);
AlarmManager alarm = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
alarm.cancel(PendingIntent.getActivity(context, a, intent,PendingIntent.FLAG_UPDATE_CURRENT));