2016-05-30 3 views
1

Я реализовал новый FCM в приложении, следуя шагам на веб-сайте FCM.Авария FirebaseInitProvider при попытке запустить приложение

Теперь я пытаюсь запустить приложение, но когда я пытаюсь его, приложение аварии с этой ошибкой:

05-30 12:28:45.788 3002-3002/es.in2.otr.app.im E/AndroidRuntime: FATAL EXCEPTION: main 
                   Process: es.in2.otr.app.im, PID: 3002 
                   java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.res.Resources.getResourcePackageName(int)' on a null object reference 
                    at android.app.ActivityThread.installProvider(ActivityThread.java:6765) 
                    at android.app.ActivityThread.installContentProviders(ActivityThread.java:6357) 
                    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6297) 
                    at android.app.ActivityThread.access$1800(ActivityThread.java:221) 
                    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1860) 
                    at android.os.Handler.dispatchMessage(Handler.java:102) 
                    at android.os.Looper.loop(Looper.java:158) 
                    at android.app.ActivityThread.main(ActivityThread.java:7224) 
                    at java.lang.reflect.Method.invoke(Native Method) 
                    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
                    Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.res.Resources.getResourcePackageName(int)' on a null object reference 
                    at com.google.android.gms.common.internal.zzah.<init>(Unknown Source) 
                    at com.google.firebase.FirebaseOptions.fromResource(Unknown Source) 
                    at com.google.firebase.FirebaseApp.zzbu(Unknown Source) 
                    at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source) 
                    at android.content.ContentProvider.attachInfo(ContentProvider.java:1789) 
                    at android.content.ContentProvider.attachInfo(ContentProvider.java:1764) 
                    at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source) 
                    at android.app.ActivityThread.installProvider(ActivityThread.java:6762) 
                    at android.app.ActivityThread.installContentProviders(ActivityThread.java:6357)  
                    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6297)  
                    at android.app.ActivityThread.access$1800(ActivityThread.java:221)  
                    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1860)  
                    at android.os.Handler.dispatchMessage(Handler.java:102)  
                    at android.os.Looper.loop(Looper.java:158)  
                    at android.app.ActivityThread.main(ActivityThread.java:7224)  
                    at java.lang.reflect.Method.invoke(Native Method)  
                    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
                    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  

Как я могу видеть, Автошоу метод пытается получить какую-то ценность, где нулевой.

Я искал решения и нашел это сообщение в SO. ->Unable to get provider com.google.firebase.provider.FirebaseInitProvider

В растворе они сказали, чтобы добавить ApplicationID в Gradle файл сборки проекта, но я получил его:

defaultConfig { 
     applicationId "es.in2.otr.app.im" 
     minSdkVersion 16 
     targetSdkVersion 23 
     multiDexEnabled true 

     testApplicationId "es.in2.otr.app.im.test" 
     testInstrumentationRunner "android.test.InstrumentationTestRunner" 
    } 

и фотоизображение грохот.

Есть ли какое-нибудь решение проблемы или решение этой проблемы?

+0

Афон 2 месяца Я возвращаюсь с той же проблемой. Теперь это происходит, когда я подписываю APK, и я пытаюсь его протестировать. Любое решение известно? – Shudy

ответ

0

У меня была та же проблема. После добавления aplicationId я заметил, что на моем устройстве установлено 2 приложения. Я думаю, что это как-то изменило имя пакета приложения, ведущего устройство, чтобы понять, что это два разных приложения.

Итак, я удалил две версии, а затем сработал.

ps: Командная строка не запускает приложение в обычном режиме. Он говорит: «Запуск приложений ... LAUNCH УСПЕХ», но приложение никогда не запущен, я должен открыть его вручную

EDIT: Только что узнал, что я был ввести неверный идентификатор приложения, теперь он работает правильно

+0

Не могли бы вы указать мне, как проверить правильность идентификатора приложения или нет, потому что у меня такая же проблема? – Bhumit

+0

Приложение успешно работает в API 21, но оно не работает в API 18 ... – Bhumit

0

Добавьте строку compile 'com.android.support:multidex:1.0.1' вашим зависимостей (или просто удалить multiDexEnabled true, если не требуется)

Добавить этот атрибут в теге приложения в манифесте:

android:name="android.support.multidex.MultiDexApplication" 

Если у вас уже есть собственный класс приложений, определенный в Android манифесте, расширьте его из MultiDexApplication вместо приложения

Это работает для меня!

Смежные вопросы