【发布时间】:2016-07-06 21:22:22
【问题描述】:
当我激活 proguard 时,我无法生成我的项目:
http://www.pastefile.com/hyEvNK
我的构建文件是:
应用插件:'com.android.application'
安卓 {
compileSdkVersion 23
构建工具版本“23.0.2”
默认配置 {
应用程序ID“com.sh.inv”
targetSdkVersion 23
版本代码 66
版本名称“2.5.0”
multiDexEnabled 假
}
构建类型 {
发布 {
缩小启用真
proguardFiles 'proguard-project.txt'
}
}
产品风味{
}
产品风味{
minSdkVersion 21
}
}
存储库{
maven { url "http://jzaccone.github.io/SlidingMenu-aar" }
}
依赖{
编译文件('libs/ormlite-android-4.48.jar')
编译文件('libs/ormlite-core-4.48.jar')
编译'com.android.support:multidex:1.0.1'
编译'com.android.support:appcompat-v7:23.2.1'
编译'com.android.support:support-v4:23.2.1'
编译'com.android.support:support-v13:23.2.1'
编译'com.google.code.gson:gson:2.6.2'
编译'org.apache.httpcomponents:httpcore:4.4.4'
编译'com.android.support:design:23.2.1'
编译'com.android.support:preference-v14:23.2.1'
编译'com.google.android.gms:play-services-analytics:8.4.0'
编译'com.google.android.gms:play-services-identity:8.4.0'
编译 'com.google.android.gms:play-services-drive:8.4.0'
编译'org.apache.commons:commons-io:+'
编译项目(':afilechooser')
编译项目(':simplecropimage')
}
配置{
compile.exclude 组:“org.apache.httpcomponents”,模块:“httpclient”
}
proguard-project.txt 是:
-dontwarn android.support.**
-不要警告 com.google.gson.**
-不要警告 com.j256.**
-dontwarn com.actionbarsherlock.**
-assumenosideeffects 类 android.util.Log {
公共静态 *** d(...);
公共静态 *** v(...);
}
- 保留类 com.j256。**
-keepclassmembers 类 com.j256.** {*;}
-保持枚举 com.j256.**
-keepclassmembers enum com.j256.** {*;}
-保留接口com.j256。**
-keepclassmembers 接口 com.j256.** {*;}
-保持界面android.support.**
-keepclassmembers 接口 android.support.** {*;}
-keep interface com.mapsaurus.paneslayout.**
-keepclassmembers 接口 com.mapsaurus.paneslayout.** {*;}
-保留类 com.sh.inv.businessobjects.*
-keepclassmembers 类 com.sh.inv.businessobjects.* { *; }
-keep 类 com.sh.inv.DatabaseHelper
-keepclassmembers 类 com.sh.inv.inv.DatabaseHelper { *; }
-保留类 com.sh.inv.businessobjects.ws.*
-keepclassmembers 类 com.sh.inv.businessobjects.ws.* { *; }
-keep class com.android.vending.billing.*
-keepclassmembers 类 com.android.vending.billing.* { *; }
-保留类 com.sh.inv.ui.fragment.*
-keepclassmembers 类 com.sh.inv.ui.fragment.* { *; }
-keepclassmembers 类 * {
公共(android.content.Context);
}
-keepattributes 签名
-keepattributes 注解
-renamesourcefile 属性源文件
-keepattributes SourceFile,LineNumberTable
-保持公共类 * 扩展 android.app.Fragment
-保持公共类 * 扩展 android.support.v4.app.DialogFragment
-保持公共类 * 扩展 com.sh.inv.ui.common.FragmentActivityBase
-keepclassmembers 类 * 扩展 com.actionbarsherlock.ActionBarSherlock {
(android.app.Activity, int);
}
#-injars 库
-keep 类 * 扩展 java.util.ListResourceBundle {
受保护的对象[][] getContents();
}
-保持公共类 com.google.android.gms.common.internal.safeparcel.SafeParcelable {
公共静态最终*** NULL;
}
-keepnames @com.google.android.gms.common.annotation.KeepName 类 *
-keepclassmembernames 类 * {
@com.google.android.gms.common.annotation.KeepName *;
}
-keepnames 类 * 实现 android.os.Parcelable {
公共静态最终**创建者;
}
它在上一个版本中工作,但它是一个休眠项目,我不得不将它从 eclipse 迁移到 android studio 并升级所有引用 可能导入的库有一些错误..
此外,关于 ormlite 或库的重复定义,我有很多以前没有的警告
【问题讨论】:
-
添加 -info 以显示错误。
-
我在android studio的首选项>编译器>命令行选项中添加。我有错误:注意:有 164 个重复的类定义。
-
你的 gradle 版本是什么?
-
集成到android studio 1.5.1中的那个。 Gradle 2.8 和工具 1.5.0