2017-01-21 8 views
3

firebaseエンドポイントを使用してプッシュ通知を送信しています。正常に動作しています。私は郵便配達員を使用してFCMにリクエストを送信しています。私の問題は、大きなアイコンを送る方法を理解できないことです。FCM/GCM JSONペイロード - 大きなアイコンを指定するにはどうすればよいですか?

FCMには2種類のペイロードがあります。データペイロードと通知ペイロード。 See here。私は通知ペイロードに焦点を当てています。表示するローカルの大きなアイコンを指定するにはどうすればよいですか?

<meta-data 
     android:name="com.google.firebase.messaging.default_notification_icon" 
     android:resource="@drawable/mylogo" /> 
<meta-data 
     android:name="com.google.firebase.messaging.default_notification_color" 
     android:resource="@color/mycolor" /> 

しかし、これは小さなアイコンです:私は、メタデータを使用して、マニフェストにこの方法をデフォルトの通知アイコンを指定することができます知っています。私は使用したいLARGEアイコンをどのように指定するのですか?私はFCMのための上方に設けられたドキュメントで

は、次のようになります例があります:

{ 
    "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", 
    "notification" : { 
     "body" : "great match!", 
     "title" : "Portugal vs. Denmark", 
     "icon" : "myicon" 
    } 
} 

が、これは小さなアイコンです。どのように大きなアイコンを行うには?

notification with icon

答えて

4

FCMは、大アイコンを設定するためのAPIを持っていない:

大きいアイコンは次のようになります。

あなたはカスタムペイロードでdata-messageを送信し、onMessageReceived()

+2

しかし、あなたのアプリがバックグラウンドで動作しているとき、この方法は、 'onMessageReceived()'によって呼び出さすることはできません内部で独自のローカル通知を作成することができることを実現したい場合は ' FCM。 – wqycsu

+0

@wqycsu onMessageReceived()は、data-onyメッセージを送信する場合に呼び出されます。メッセージに通知の詳細が含まれている場合は、onMessageReceivedを呼び出さずに通知トレイに入れられます。 – zarax

+0

FirebaseMessagingServiceを拡張するクラスのonMessageReceived()は、アプリがバックグラウンドのときにのみ呼び出されるという問題があります。 –

関連する問題