如何在用户点击通知时根据当前情况启动活动?

时间:2018-01-18 14:51:33

标签: android android-intent android-notifications

考虑一个项目,您的用户可以投票选出问题(如公民投票)。

当一个新问题可用于投票时,用户将收到一个新的推送通知,当点击它时,应该打开,具体取决于具体情况:

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());

0 个答案:

没有答案