Getting error "The package appears to be corrupt" in Fabric Beta on Android 6

时间:2017-06-15 10:00:34

标签: android google-fabric fabric-beta

All my beta testers with Android 6 get this error when installing my app from Beta:

App not installed. The package appears to be corrupt

No problems for users with Android 7+. The APK can be dirrectly installed on all devices, including those with error in Beta. The problem appeared a few days ago, configuration of project did not change.

All my users uses latest 1.7.0 Beta app. Project dependencies:

dependencies {
    classpath 'io.fabric.tools:gradle:1.+'
}

compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
    transitive = true
}
compile('com.crashlytics.sdk.android:crashlytics-ndk:1.1.6@aar') {
    transitive = true
}

Any help?

UPD. I removed android:extractNativeLibs="false" from AndroidManifest.xml and now it works.

5 个答案:

答案 0 :(得分:2)

对我来说,解决方案是将gradle从版本3.0.0(Android Studio 3引入)降级到2.3.3(之前的版本)。 我通过在项目.gradle文件中替换这一行来实现这一点:

    buildscript {
    repositories {
        ...
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        ...
    }
}

使用:

    buildscript {
    repositories {
        ...
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
        ...
    }
}

在完成清洁和构建之后,我能够将我的应用程序上传到Beta并安装它没有任何问题。

答案 1 :(得分:1)

我回答了类似的问题here

从Android Studio 3.0开始,如果我尝试通过用户界面上传apk,我会遇到完全相同的问题。

现在,您必须使用命令行上传apk,如documentation所示。

./gradlew assembleDebug crashlyticsUploadDistributionDebug

我希望这会有所帮助!

答案 2 :(得分:1)

您需要首先构建apk:-1 Build>构建apk(s) 这是因为安全问题。如果任何非开发者想要你的APK,那么很容易从你的文件夹中获取它。所以现在不会发生只有开发人员才能创建可共享的APK。

答案 3 :(得分:0)

我解决了删除问题

android:extractNativeLibs="false"

来自AndroidManifest,直到Fabric修复此问题。

答案 4 :(得分:0)

经过大量搜索,我找到了解决方案:

转到Build->建立Apk(s)。

创建apk后,您将显示如下对话框。

点击查找并将其安装到手机中

享受