Android Studio - 已签名APK用于发布崩溃
问题描述:
我正在为我的应用的下一次更新创建已签名的APK。但是,当我将这个APK文件传输到我的设备并安装它时,它在打开应用程序时崩溃。Android Studio - 已签名APK用于发布崩溃
这里是我的项目级别gradle这个文件
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
classpath 'com.google.gms:google-services:2.0.0-alpha6'
}
}
allprojects {
repositories {
jcenter()
}
}
这里是我的模块gradle这个文件代码:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '23.0.0'
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "com.washkart.activities"
minSdkVersion 15
targetSdkVersion 19
// Enabling multidex support.
multiDexEnabled true
}
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
dataBinding {
enabled = true
}
}
dependencies {
compile files('libs/joda-time-2.4.jar')
compile(name:'acra-4.7.0', ext:'aar')
compile project(':ViewPagerIndicator')
compile 'com.google.android.gms:play-services:8.4.0'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.google.android.gms:play-services-ads:8.4.0'
compile 'com.google.android.gms:play-services-identity:8.4.0'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'com.facebook.android:facebook-android-sdk:4.6.0'
compile 'com.google.android.gms:play-services-analytics:8.4.0'
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:multidex:1.0.0'
}
apply plugin: 'com.google.gms.google-services'
,我已经在我的ProGuard文件下面行加入,以避免该警告/错误我得到durng签署的APK:
-keepnames class org.apache.** {*;}
-keep class org.apache.** {*;}
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.app.** { *; }
-dontnote android.support.v4.**
-keep class org.joda.time.** { *; }
-keep interface org.joda.time.** { *;}
-keep class android.support.v7.app.** { *; }
-keep interface android.support.v7.app.** { *; }
-dontskipnonpubliclibraryclassmembers
-dontwarn org.apache.commons.logging.LogFactory
-dontwarn org.apache.http.annotation.ThreadSafe
-dontwarn org.apache.http.annotation.Immutable
-dontwarn org.apache.http.annotation.NotThreadSafe
-dontwarn org.jodatime.time.**
-dontwarn org.joda.convert.**
-dontwarn org.apache.http.**
-dontwarn android.net.**
我有Android Studio 1.5.1和测试在Android 4.4.2上。 我在生成>生成签名APK>从下拉列表中选择模块>添加密钥库文件,别名和密码>生成类型=发布>完成时生成的过程
答
我正面临同样的问题,问题是在你的proguard文件中。 使用minifyEnabled true
时,您已启用了proguard。 要么禁用它禁用proguard,要么阅读关于如何使用here中的proguard,因为它放弃了未在proguard-rules.pro中添加的类文件和其他资源。