Android Studio 0.5.0重建不与Proguard一起使用

Pro*_*kky 9 android proguard gradle android-studio facebook-sdk-3.0

最近我根据IDE的建议将Android Studio从0.4.2更新到0.5.0,将Android Gradle Plug-In从0.7.2更新到0.9.0.项目运行并安装良好,但是当我按下Build-> Rebuild Project时,它会抛出一个错误,停止重建.消息选项卡中出现以下错误:

Information:See complete output in console
Error:Execution failed for task ':projectName:proguardDebug'.
> java.io.IOException: Please correct the above warnings first.
Run Code Online (Sandbox Code Playgroud)

以下是控制台中描述的问题:

:projectName:proguardDebug
Note: there were 2345 duplicate class definitions.
Warning: com.facebook.Settings: can't find referenced class com.facebook.android.BuildConfig
Warning: com.facebook.Settings: can't find referenced class com.facebook.android.BuildConfig
Warning: com.facebook.internal.Utility: can't find referenced class com.facebook.android.BuildConfig
Warning: com.facebook.internal.Utility: can't find referenced class com.facebook.android.BuildConfig
Warning: there were 4 unresolved references to classes or interfaces.
         You may need to add missing library jars or update their versions.
         If your code works fine without the missing classes, you can suppress
         the warnings with '-dontwarn' options.
         (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
:projectName:proguardDebug FAILED

FAILURE: Build failed with an exception.
Run Code Online (Sandbox Code Playgroud)

据我所知,问题是缺少BuildConfig.java,它在从Eclipse迁移之前位于/ gen文件夹中.但是现在没有/ gen文件夹和BuildConfig.java在/ build/source/buildConfig/debug/forlder中.

我找到了唯一真正对此有所帮助的溶剂,它正在添加生产线

-dontwarn com.facebook.** 
Run Code Online (Sandbox Code Playgroud)

到proguard配置文件,但它不是真正的sollution.

Xav*_*het 11

问题是我们的库没有打包BuildConfig.这是因为我们允许(现在)库具有相同的包名称.我们要改变这个.

这应该不是问题,因为BuildConfig只是应该在代码中内联的常量.您可以执行临时修复,只排除BuildConfig:

-dontwarn com.facebook.android.BuildConfig
Run Code Online (Sandbox Code Playgroud)

我们很快就会解决这个问题.