2016-07-15 21 views
9

I zaktualizowane Usługi Google Play w moim app od 8.4.0 do 9.2.1 i zaczął widząc następujące katastrofy najbliższych kilka razy dziennie:Firebase NullPointerException w grze Services 9.2.1

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'byte[] java.lang.String.getBytes()' on a null object reference 
     at android.util.Base64.decode(Base64.java:118) 
     at com.google.firebase.iid.zzg.zzkl(Unknown Source) 
     at com.google.firebase.iid.zzg.zzh(Unknown Source) 
     at com.google.firebase.iid.zzd.zzb(Unknown Source) 
     at com.google.firebase.iid.zzd.zzcxa(Unknown Source) 
     at com.google.firebase.iid.zzd.zzbmu(Unknown Source) 
     at com.google.firebase.iid.FirebaseInstanceId.getInstance(Unknown Source) 
     at com.google.firebase.iid.FirebaseInstanceId.zzcww(Unknown Source) 
     at com.google.firebase.iid.FirebaseInstanceIdService.zzaa(Unknown Source) 
     at com.google.firebase.iid.FirebaseInstanceIdService.zzm(Unknown Source) 
     at com.google.firebase.iid.zzb$2.run(Unknown Source) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
     at java.lang.Thread.run(Thread.java:818) 

nie jestem jednoznacznie włączając Firebase, ale nie mam jeszcze migracji z GCM, ale mam usługi Google w mojej aplikacji. Wydaje mi się, że Firebase wchodzi w grę zależnie od innych moich usług Play-Services lub wtyczki google-services. Oto urywek z mojego pliku build.gradle:

compile 'com.google.android.gms:play-services-analytics:9.2.1' 
compile 'com.google.android.gms:play-services-appindexing:9.2.1' 
compile 'com.google.android.gms:play-services-places:9.2.1' 
compile 'com.google.android.gms:play-services-gcm:9.2.1' 

Ta katastrofa wydaje się bardzo podobna do this one ale to przychodzi z getInstance() zamiast getToken() więc zastanawiam się, czy ktoś wie, czy tęsknię integracyjnym lub coś takiego? Mam nadzieję, że jedyną odpowiedzią jest nie czekać na naprawę google.

AKTUALIZACJA: Dodałem aplikację Firebase do mojej aplikacji przez pulpit nawigacyjny, a następnie wygenerowałem nowy plik google-services.json, ponownie spakowałem moją aplikację i wydałem poprawkę. Nie rozwiązało to problemu, ponieważ wciąż widzę wystąpienia w Crashlytics w nowej wersji.

AKTUALIZACJA 2: Nadal nie znalazłem rozwiązania, ale zauważyłem, że te awarie zwężają się w Crashlytics. Miałem 40 pierwszego dnia, 30 drugiego dnia, 10 trzeciego dnia, a teraz do ~ 4. To prowadzi mnie do przekonania, że ​​ten błąd dotyczy tylko nowych użytkowników lub aktualizacji użytkowników, których początkowo było dużo, ponieważ aplikacje moich użytkowników zostały uaktualnione do nowej wersji. Nadal uważam, że to błąd Google'a i mam nadzieję, że go naprawią, ale przynajmniej nie jest tak rozpowszechniony, jak początkowo sądziłem.

+0

Jeśli nie kompilujesz bazy Firebase, to skąd otrzymujesz pakiet 'com.google.firebase'? –

+0

Myślę, że jest to zależność pakietu 'appindexing' – yuval

+0

Widzę problem z bibliotekami v9.2.1. Załączam bazy rdzenia i zdalne biblioteki konfiguracyjne oraz gms usługi usług analitycznych i biblioteki gcm w mojej kompilacji produkcyjnej wraz z awariami. – user1652110

Odpowiedz

1

Jak opisano w moich aktualizacjach, po kilku dniach zobaczyłem coraz mniej takich błędów, do tej pory kilka tygodni później już ich nie widzę. Więc myślę, że odpowiedź jest taka, że ​​to sporadycznie wpływa na użytkowników, którzy aktualizują swoje aplikacje i ostatecznie umierają na własną rękę. Najprawdopodobniej nie jest wymagane działanie ze strony programisty.

Powiązane problemy