我正在使用android studio来构建调试和发布应用程序.当我构建调试/发布应用程序时
./gradlew assembleDebug ./gradlew assembleRelease
这两个版本都是完美创建并运行的.显示调试或发布的相应对话框
现在我在build.gradle中添加了proguard详细信息:
signingConfigs { myConfig { storeFile file("keystore.jks") storePassword "abc123!" keyAlias "androidreleasekey" keyPassword "pqrs123!" } } buildTypes { release { runProguard true proguardFile getDefaultProguardFile('proguard-android-optimize.txt') signingConfig signingConfigs.myConfig } } productFlavors { defaultFlavor { proguardFile 'proguard-rules.txt' } }
现在它在事件日志中显示错误为
警告:有7个未解析的类或接口引用.您可能需要添加缺少的库jar或更新其版本.如果您的代码在没有缺少类的情况下正常工作,则可以使用"-dontwarn"选项来禁止警告.(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
警告:程序类成员有2个未解析的引用.您的输入类似乎不一致.您可能需要重新编译代码.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedprogramclassmember):Flash销售:proguardDefaultFlavorRelease FAILED
如果我将runProguard选项设置为false然后运行它.
我有这些问题:
1)用runProguard = false发布apk是否可以?
2)如何在创建发布版本时使用dontwarn?
当我向项目添加新的lib时通常这我需要为Progaurd定义.
假设我正在使用Twitter4J lib,那么我就这样添加dontwarn.
-keep class twitter4j.*{*; }
-dontwarn twitter4j.*