在我正在研究的这个项目中,有一堆警报已经创建,当它们发生时,这就是我目前正在发生的事情..
闹钟响起
通知已放入状态栏
当用户选择通知时,它会将他们带到应用中的特定活动以处理当前有效的通知
只要有未处理的通知,通知就会保留在状态栏中
现在问题在于,当用户从通知中心选择闹钟时,它会停留在那里,但如果用户离开应用程序,它会变为“死”,然后再次点击该通知,它就不会用户回到应用程序,这就是LogCat所说的......
StatusBar - Sending contentIntent failed: android.app.PendingIntent$CanceledException
InputManagerService - Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@44f94258
我已经找到了解决这个问题的解决方案......其他任何人都在处理这个问题吗?
答案 0 :(得分:1)
答案:requestCode和通知ID必须匹配,请参阅下面我对iAlertUniqueID
的使用:
notification.contentIntent = PendingIntent.getActivity(context, iAlertUniqueID, targetActivityIntent, Intent.FLAG_ACTIVITY_NEW_TASK);
notificationMgr.notify(iAlertUniqueID++, notification);
iAlertUniqueID
只是我的类中的一个静态int(不是final!),它扩展了BroadcastReceiver