Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

No static method zzUr() in Firebase when I try to use Analytics with Notifications

I'm starting to use the Firebase Cloud Messaging.

I have only the example code of the guide to use the Notifications and Analytics. If I don't install Analytics notifications works fine, but when I add in gradle the Analytics I have get this error when I try to send a notification:

java.lang.NoSuchMethodError: No static method zzUr()Landroid/content/Intent; in class Lcom/google/firebase/iid/FirebaseInstanceIdInternalReceiver; or its super classes (declaration of 'com.google.firebase.iid.FirebaseInstanceIdInternalReceiver' appears in /data/app/com.myapp.newapp-2/base.apk) at com.google.firebase.messaging.FirebaseMessagingService.zzz(Unknown Source) at com.google.firebase.iid.zzb.onStartCommand(Unknown Source) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3316) at android.app.ActivityThread.access$2200(ActivityThread.java:177) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1547) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5951) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1195)

I have in gradle:

compile 'com.google.firebase:firebase-messaging:9.0.2' compile 'com.google.firebase:firebase-core:9.2.0' 

My MyFirebaseMessagingService:

@Override public void onMessageReceived(RemoteMessage remoteMessage) {     // TODO(developer): Handle FCM messages here.     // If the application is in the foreground handle both data and notification messages here.     // Also if you intend on generating your own notifications as a result of a received FCM     // message, here is where that should be initiated. See sendNotification method below.     Log.d(TAG, "From: " + remoteMessage.getFrom());     Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());      sendNotification(remoteMessage.getNotification().getBody()); }  private void sendNotification(String messageBody) {     Intent intent = new Intent(this, MainActivity.class);     intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);     PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 /* Request code */, intent, PendingIntent.FLAG_ONE_SHOT);      Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);     NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)             .setContentText(messageBody)             .setAutoCancel(true)             .setSound(defaultSoundUri)             .setVibrate(new long[] { 1000, 1000, 1000, 1000, 1000 })             .setContentIntent(pendingIntent);      NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);      notificationManager.notify(0 /* ID of notification */, notificationBuilder.build()); } 

Any help will be appreciated!

like image 764
S.P. Avatar asked Jul 05 '16 11:07

S.P.


1 Answers

try this:

add

compile 'com.google.firebase:firebase-analytics:9.2.0' 

and change this:

compile 'com.google.firebase:firebase-messaging:9.0.2' 

to THIS (same version on all)

compile 'com.google.firebase:firebase-messaging:9.2.0' 

if this doesn't work, put all firebase versions to 9.0.2, or 9.0.0

like image 59
Daniel Andujar Avatar answered Sep 21 '22 07:09

Daniel Andujar