Ich habe ein Problem mit der Behandlung von NullPointer Ausnahme von remoteMessage.Firebase remoteMessage getData ordnungsgemäße NullPointer Handhabung
Ich habe versucht, einfache Prüfung zu tun:
Map<String, String> data = remoteMessage.getData();
if(data != null) {
Log.d(TAG, remoteMessage.getData().get("lat"));
Log.d(TAG, remoteMessage.getData().get("lng"));
}
Ich habe auch versucht härter:
if(remoteMessage.getData().get("lat") != null) {
Log.d(TAG, remoteMessage.getData().get("lat"));
}
Aber es stürzt immer mit Nullpointer:
05-29 10:22:33.112 21028-24256/com.coderspeak.smog_app E/AndroidRuntime: FATAL EXCEPTION: pool-12-thread-1
Process: com.coderspeak.smog_app, PID: 21028
java.lang.NullPointerException: println needs a message
at android.util.Log.println_native(Native Method)
at android.util.Log.d(Log.java:139)
at com.coderspeak.smog_app.services.fcm.AppFirebaseMessagingService.onMessageReceived(AppFirebaseMessagingService.java:50)
at com.google.firebase.messaging.FirebaseMessagingService.zzl(Unknown Source)
at com.google.firebase.messaging.FirebaseMessagingService.zzJ(Unknown Source)
at com.google.firebase.messaging.FirebaseMessagingService.handleIntent(Unknown Source)
at com.google.firebase.iid.zzb$1.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
Wie kann ich tun die richtige Prüfung dafür?
Log.d (TAG, remoteMessage.getData(). Get ("lat") + ""); –
Können Sie versuchen, die gesamten Daten zu drucken? Log.d (TAG, "Nachrichtendaten payload:" + remoteMessage.getData()); ' –