我有一个有通知生成器的应用。我能够接收并生成多个通知。我现在的问题是如何知道用户点击了哪个通知?每个通知的行为可能不同,并且我的应用中最多可能同时有5个通知。我在网上搜索过,发现onClick
事件没有发现通知......
我发现onNewIntent
可以提供帮助,但它不稳定...因为在用户点击通知之前,系统可能会杀死该活动。
有人可以帮忙吗?
谢谢!
答案 0 :(得分:1)
我建议您添加数据以添加到通知的意图中。
例如。
intent.putExtra(" Notification_id",id)//您可以将此ID设为系统时间或某个唯一标识符。
(或者您可以将此添加到您的额外内容中,而不是仅仅添加额外内容。)
然后当你打开意图时,你可以检查身份。
id = intent.getExtra(" Notification_id")
希望这会有所帮助。如果您有任何疑问或需要更多详细信息,请与我们联系。
更新:你必须在意图中添加数据,然后在onNewIntent()和onResume()中读取它。然后,在执行完所需的操作后,从意图中删除额外内容。还添加了一些像System.currentTimeMillis()这样的独特数据,它会阻止意图被重用。