Ich habe diese tutorial gefolgt und wenn ich versuche, eine Nachricht von der Firebase-Konsole zu senden, wurden onMessageReceived
aufgerufen und createNotification
wurden durchgeführt, keine Benachrichtigung erscheint.Android Firebase-Benachrichtigungsnachricht wird empfangen, aber die Benachrichtigung wird nicht angezeigt?
Es nehme an, dies zu veranlassen, aber es hat nicht
Unten ist mein MyAndroidFirebaseMsgService Code
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.graphics.BitmapFactory;
import android.media.RingtoneManager;
import android.net.Uri;
import android.support.v4.app.NotificationCompat;
import android.util.Log;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;
import java.util.HashMap;
public class MyAndroidFirebaseMsgService extends FirebaseMessagingService
{
private static final String TAG = "MyAndroidFCMService";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
//Log data to Log Cat
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());
//create notification
createNotification(remoteMessage.getNotification().getBody());
}
private void createNotification(String messageBody)
{
Intent intent = new Intent(this , ResultActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent resultIntent = PendingIntent.getActivity(this , 0, intent, PendingIntent.FLAG_ONE_SHOT);
Uri notificationSoundURI = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder mNotificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle("Test Notification")
.setContentText(messageBody)
.setAutoCancel(false)
.setSound(notificationSoundURI)
.setContentIntent(resultIntent);
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, mNotificationBuilder.build());
}
}
Veröffentlichen Sie Ihren 'MyAndroidFirebaseMsgService'-Code –
Es wird passieren, wenn Sie App im Hintergrund ist. Die Annahme ist, dass, wenn es sichtbar ist, App bereits im Fokus ist und du alles, was du willst, dort und dann ausführen wirst. –
ist es besser, Ihre benutzerdefinierte Benachrichtigung onMessageReceived zu verwenden oder prüfen Sie zuerst Protokoll, ob Benachrichtigung empfangen wird oder nicht mit Protokoll oder Debug –