首页 > 解决方案 > FirebaseInitProvider。找不到资源

问题描述

我在应用程序中使用 Google Firebase 已经有一段时间了,我正在做一些维护和一些更新,但我不断得到:

无法获取提供商 com.google.firebase.provider.FirebaseInitProvider

每当我启动应用程序时都会发生这种情况。自从我开始使用 FCM 以来,我已经尝试过启用MultiDex并且我的设置。applicationId我只是不知道它可能是什么。

任何帮助都感激不尽。

build.gradle(应用程序):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
    applicationId "com.vivatrucking.drivershub"
    multiDexEnabled true
    minSdkVersion 15
    targetSdkVersion 27
    versionCode 2
    versionName "1.0.1"
    testInstrumentationRunner  "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
  }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    // android
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support:cardview-v7:27.1.1'
    implementation 'com.android.support:recyclerview-v7:27.1.1'
    implementation 'com.android.volley:volley:1.0.0'
    // google
    implementation 'com.google.firebase:firebase-core:15.0.2'
    implementation 'com.google.firebase:firebase-messaging:15.0.2'
    //external libs
    implementation 'com.github.devlight:infinitecycleviewpager:1.0.2'
}
apply plugin: 'com.google.gms.google-services'

完整的堆栈跟踪:

05-08 15:03:31.400 30530-30530/? E/AndroidRuntime:致命异常:主进程:com.vivatrucking.drivershub,PID:30530 java.lang.RuntimeException:无法获取提供程序 com.google.firebase.provider.FirebaseInitProvider:android.content.res.Resources$NotFoundException:无法在 android.app.ActivityThread.installContentProviders(ActivityThread.java:6127) 在 android.app.ActivityThread.handleBindApplication(ActivityThread.java: 

标签: javafirebaseandroid-studioandroid-gradle-pluginfirebase-cloud-messaging

解决方案


firebase-common 查找特定的字符串资源“google_app_id”,FirebaseApp.initializeApp(Context)在我的情况下似乎不存在。

(com.google.firebase:firebase-common@@16.0.4:301)
    StringResourceValueReader reader = new StringResourceValueReader(context);
    String applicationId = reader.getString("google_app_id");

我想这应该由 google-services.json 填充。目前不确定解决方案。


推荐阅读