我正在使用一个带有多个选项卡的活动(Activity)。来自应用程序的不同部分,会创建通知以告知用户某些内容已更改。我现在成功地调用了活动(Activity),当用户点击通知(Notification)时。但是,如何确定活动(Activity)是在运行时通过“正常”方式创建的还是通过单击通知而创建的呢?
(根据所单击的通知,我想转到另一个选项卡,而不是显示主选项卡。)
这成功地调用了我的MainActivity。但是,当Activity被
(根据所单击的通知,我想转到另一个选项卡,而不是显示主选项卡。)
Intent intent = new Intent(ctx, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(ctx, 0, intent, 0);
// TODO: Replace with .Build() for api >= 16
Notification noti = new Notification.Builder(ctx)
.setContentTitle("Notification"
.setContentText(this.getName())
.setSmallIcon(R.drawable.icon)
.setContentIntent(pendingIntent)
.setDefaults(
Notification.DEFAULT_SOUND
| Notification.DEFAULT_LIGHTS)
.setAutoCancel(true)
.getNotification();
NotificationManager notificationManager = (NotificationManager) ctx
.getSystemService(Context.NOTIFICATION_SERVICE);
// Hide the notification after its selected
notificationManager.notify(this.getId(), noti);
这成功地调用了我的MainActivity。但是,当Activity被
pendingIntent
触发时,是否有一些方法被调用?考虑在Main Activity中定义类似这样的内容:onTriggeredByNotification(Notification noti){
//determinte tab, depending on Notification.
}
onNewIntent
方法在任何时间都没有被触发。 - dognose