考虑一个项目,您的用户可以投票选出问题(如公民投票)。
当一个新问题可用于投票时,用户将收到一个新的推送通知,当点击它时,应该打开,具体取决于具体情况:
Situation A
:问题尚未投票,因此应用会打开 VoteActivity ,用户可以投票。
Situation B
:问题已经投票,因此应用会打开 ResultsActivity ,用户可以在其中查看结果。
由于在创建通知时附加了Intent,因此我无法重新计算此时Intent应启动的内容。
解决此问题的最佳方法是什么?
修改
我以这种方式创建了通知:
NotificationCompat.Builder notificationBuilder = null;
try {
notificationBuilder = new NotificationCompat.Builder(this.context)
.setSmallIcon(R.drawable.ic_description_black_24dp)
.setLargeIcon(getCircleBitmap(Picasso.with(this.context).load(pictureUrl).get()))
.setContentTitle(title)
.setContentText(body)
.setAutoCancel(true)
.setChannelId("contents")
.setContentIntent(pendingIntent);
} catch (IOException e) {
e.printStackTrace();
}
notificationManager.notify(1, notificationBuilder.build());