【问题标题】:Galaxy S3 not working, could not find Firebase providerGalaxy S3 不工作,找不到 Firebase 提供商
【发布时间】:2016-10-15 23:24:54
【问题描述】:

我看到了这个问题的几个答案,但似乎没有任何帮助。我正在三星 Galaxy S3 上安装我的自签名 Release-APK,没有任何问题。启动应用程序会产生以下异常;

java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: /data/app/de.myapp.app-2.apk

这是我的 gradle 脚本(应用程序):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.0"
    defaultConfig {
        applicationId "de.myapp.app"
        minSdkVersion 18
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.2.1'
    testCompile 'junit:junit:4.12'

    compile 'com.google.android.gms:play-services-location:9.6.1'
    compile 'com.google.android.gms:play-services-maps:9.6.1'
}

我尝试只使用特定的谷歌播放服务。没有帮助。 在模拟器和我的 Nexus 5 上运行良好。

【问题讨论】:

  • 我添加了这个条目 => 清理,重建,发布已签名的 apk,仍然是同样的错误 :(

标签: android firebase


【解决方案1】:

这是因为您使用的是 google play 服务,其中包括在 sad-sung 上伪造的 firebase 分析。您可以通过

禁用它
configurations {
    all*.exclude group: 'com.google.firebase', module: 'firebase-common'
}

configurations {
    all*.exclude group: 'com.google.firebase', module: 'firebase-core'
    all*.exclude group: 'com.google.firebase', module: 'firebase-iid'
}

(source)

【讨论】:

  • 您好,我尝试验证它,但它现在似乎仍然有效。猜猜切换到较低的 API 级别在我的设备上安装了一些东西?!我使用 adb -d uninstall 删除应用程序...您的解决方案会更酷,但我现在无法验证...
  • 但另一个答案建议您使用您已经使用的“至少 Android 4.1”(至少 API 级别 16)(您使用的是 API 级别 18)。很高兴它现在可以工作,但没有人告诉您降级到 API 级别 16。
  • 我将 TargetSDK 从 24 (7.0) 更改为 16 (4.1) 并且成功了。 MinSDK 从 18 (4.3) 到 16。但这样做之后,我可以回滚所有更改或使用您的解决方案,它仍然可以工作。我的设备上升级或降级了一些东西。关于如何撤消它(无论它是什么)以验证您的解决方案的任何线索?!也许一些 Firebase 二进制文件仍然在我的设备上,即使在卸载应用程序之后?!
  • 关于targetsdk,你不应该降级它,“为了在每个Android版本中维护你的应用程序,你应该增加这个属性的值(android:targetSdkVersion)以匹配最新的API级别,”采取来自developer.android.com/guide/topics/manifest/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-22
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 2018-04-09
  • 2019-04-06
相关资源
最近更新 更多