在应用程序打开时收到Firebase通知时触发功能

时间:2020-09-07 05:18:13

标签: android firebase

我对Firebase通知服务有疑问。我从firebase控制台发送通知,它成功接收,并且我单击通知,然后打开“ TrackinActivity”,此工作正常。但是,如果用户打开应用程序并停留在“ TrackinActivity”上,然后收到我想要的Firebase通知,而我没有在TrackinActivity中进行任何刷新,则会在TrackinActivity中触发一个功能。无需刷新即可更改TrackinActivity中的某些值。

我的意思是这个功能:

    @Override
public void onMessageReceived(RemoteMessage remoteMessage) {
    super.onMessageReceived(remoteMessage);
}

我想在不刷新的情况下调用该跟踪活动的功能。

1 个答案:

答案 0 :(得分:1)

为此,您必须在共享首选项中设置一个布尔变量

例如isActivityOpened = true

销毁false并在此活动的"TrackinActivity"中设置值true时设置值onCreate

 @Override
 public void onMessageReceived(RemoteMessage remoteMessage) {
        super.onMessageReceived(remoteMessage);
        if(isActivityOpened){//check sharedpreference

           //here send local broadcast message and receive in "TrackinActivity"
           //on receive method of local broadcast update some values in activity

        }else{

           //here start activity as usual 

        }
 }

获取有关local broadcast的详细信息