2017-06-12 82 views
0

如何通过单击系统托盘上的通知来调用启动器活动,我正在使用Firebase。如何通过单击系统托盘上的通知来启动启动器活动Firebase

+0

从你在哪里创建和发送通知? – jaibatrik

+0

@jaibatrik可以从Firebase控制台说出来。 –

+0

我想你必须发送一些自定义数据有效载荷,并且必须在客户端的onMessageReceived方法中处理它。根据有效负载生成活动的PendingIntent。 – jaibatrik

回答

2

为此,必须发送可在Firebase控制台中预先选择的键和值对(有效载荷数据)。

之后,当你点击通知你通过使用键获得价值。

例如: - 如果您使用“Id”作为密钥,那么您可以获得像这样的Id值 String id = getIntent()。getStringExtra(“Id”);

如果getIntent()。getExtras()为null,则活动不会从通知中打开,否则会从系统任务栏中的通知中打开。

0

如果你想这样做,只需使用数据消息。 它会调用onMessageReceived()方法。所以你可以在那边处理它。

不使用通知消息。

通知消息是系统托盘处理,所以你必须使用getIntent()。getExtras()上溅活动和MOV ..

那么简单的解决方案是这样的。

{ 
      "registration_ids": [ 
          "fcm token 1", 
          "fcm token 2", 
          "fcm token 3" 
         ], 
      "data": { 
        "message": "msg" 
        } 
     } 

@Override 
    public void onMessageReceived(RemoteMessage remoteMessage) { 

    String = remoteMessage.getData().get("message"); 
    // and more keys 
// same as get your message and manage click event over here. 

    }