首页 > 代码库 > Android难题 :如何判断两个PendingIntent是否相同?
Android难题 :如何判断两个PendingIntent是否相同?
============问题描述============
再做一个闹铃服务,
我在A类里面通过
PendingIntent pi_1=PendingIntent
.getBroadcast(context, re_1.getAlarm_id(), intent_1, 0);
aManager.set(AlarmManager.RTC_WAKEUP, notifyDate_1, pi_1);来创建一个提醒服务,
我又在一个类中将通过intent复原PendingIntent,然后取消: aManager.cancel(pi);
结果老是报告:NullPointerException
请问:
1.如何判断两个PendingIntent是否相同,若不同如何查处不同之处?。
============解决方案1============
“将通过intent复原PendingIntent”是什么意思?
要取消的话,直接创建PendingIntent取消就可以了:
PendingIntent pi = PendingIntent.getBroadcast(context, re_1.getAlarm_id(), intent_1, 0); AlarmManager alarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); alarmManager.cancel(pi);
============解决方案2============
取消时的PendingIntent要和创建时的一样。像楼上的取消时创建一个和创建时相同的PendingIntent。包括参数。
Android难题 :如何判断两个PendingIntent是否相同?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。