2017-06-30 15 views
0

私のプッシュ通知(FCMを使用)はフォアグラウンドとバックグラウンドの状態では正常に動作していますが、システムトレイからの通知のみを受信できますが、「データペイロード」は取得できません。 私は、間違っていると私に正しいことを知らせるために、死んだ状態でonMessageReceived()が呼び出されないという事実を知っています。 は、このメソッドをkill状態で呼び出したり、 。助けてください!アンドロイドアプリが強制終了した状態で、プッシュ通知(FCMを使用)から「データペイロード」を取得するにはどうすればよいですか?

+1

[ /stackoverflow.com/a/39505298/4625829)をご覧ください。プッシュ通知を受け取ることができれば(システムトレイを介しても(つまり、 'notification'メッセージペイロードも持っていることを意味します)、クリックした後、インテントから' data'ペイロードの詳細を取得できるはずです通知。私の答え[ここ](https://stackoverflow.com/a/41458543/4625829)も参照してください –

答えて

1

アプリがキル状態のときにデータペイロードを読み込み、通知ペイロードを送信しない場合は、データペイロードのみを使用してすべての操作を管理します。 アプリケーションがkill状態で、通知ペイロードを送信すると、onRecive()メソッドが呼び出されず、データペイロードに通知の重要度とメッセージが送信され、onRecive()で通知が生成されます。

0

私はあなたのための完璧なソリューションがあります。

@Override 
public void onMessageReceived(RemoteMessage remoteMessage) { 
    super.onMessageReceived(remoteMessage); 
    Log.e("FCM_MESSAGE", remoteMessage.getData().toString()); 
    Map<String, String> dataMap = remoteMessage.getData(); 
} 

だけで地図にあなたの全体のデータを入れて、マップから別のキーに置くことによって値を取得します。

私はまた、代わりに、通知のデータのみを使用し、このことができますhttp://www.androidbegin.com/tutorial/android-custom-notification-tutorial/

希望を使用して、独自のカスタム通知を構築することを示唆しています。

関連する問題