Android 确定是否从FCM通知调用活动

Android 确定是否从FCM通知调用活动,android,firebase,push-notification,firebase-cloud-messaging,Android,Firebase,Push Notification,Firebase Cloud Messaging,我正在为我的应用程序使用FCM通知。通知没有数据。因此,每当应用程序在后台时,主要活动都会在通知中打开。我的主要活动有4个选项卡。如果应用程序是从通知选项卡2打开的,我想打开选项卡4 我想检查主活动是否从通知打开。因为我的通知没有数据。我不会得到任何额外的东西 在intent上放置一个Extra,以确定活动的来源启动 从通知中调用时,请执行此操作 Intent notificationsIntent = new Intent(NotificationsActivity.this, MainAct

我正在为我的应用程序使用FCM通知。通知没有数据。因此,每当应用程序在后台时,主要活动都会在通知中打开。我的主要活动有4个选项卡。如果应用程序是从通知选项卡2打开的,我想打开选项卡4


我想检查主活动是否从通知打开。因为我的通知没有数据。我不会得到任何额外的东西

intent
上放置一个
Extra
,以确定
活动的来源
启动

从通知中调用时,请执行此操作

Intent notificationsIntent = new Intent(NotificationsActivity.this, MainActivity.class);
notificationsIntent.putExtra("Source", "Notification");
startActivity(notificationsIntent);
在您的
mainacivity

if(getIntent().getStringExtra("Source") == "Notification") {
    //set current tab to 4
} else {
    //set current tab to 2
}

当通过通知消息(而不是数据消息)打开应用程序时,意图将包含一个
值,您可以检查该值以检测活动是否使用通知打开

 if (intent.hasExtra("source")) {
     // set tab to 4
 }