2014-09-05 71 views
3

我分析我的應用程序1.5.1,一切工作正常,但是當我去出口APK我得到:解析SDK的Android Proguard的問題

[2014-09-05 19:53:08 - myapp] Proguard returned with error code 1. See console 
[2014-09-05 19:53:08 - myapp] Note: there were 662 duplicate class definitions. 
[2014-09-05 19:53:08 - myapp] Warning: com.parse.FacebookAuthenticationProvider$1: can't find superclass or interface com.facebook.android.Facebook$ServiceListener 
[2014-09-05 19:53:08 - myapp] Warning: com.parse.FacebookAuthenticationProvider$2: can't find superclass or interface com.facebook.Session$StatusCallback 
[2014-09-05 19:53:08 - myapp] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find superclass or interface com.facebook.Request$Callback 
[2014-09-05 19:53:08 - myapp] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook 
...... 
[2014-09-05 19:53:08 - myapp] at proguard.Initializer.execute(Initializer.java:321) 
[2014-09-05 19:53:08 - myapp] at proguard.ProGuard.initialize(ProGuard.java:211) 
[2014-09-05 19:53:08 - myapp] at proguard.ProGuard.execute(ProGuard.java:86) 
[2014-09-05 19:53:08 - myapp] at proguard.ProGuard.main(ProGuard.java:492) 

在我proguard.cfg我有以下幾點:

-keepattributes *Annotation* 
-keep class com.parse.* { *; } 
-libraryjars libs/Parse-1.5.1.jar 

這讓我瘋狂!

+0

你最終找到解決方案嗎? – drspaceboo 2014-10-02 09:52:07

回答

5

你應該嘗試也在密切com.parse的子包:

-keepattributes *Annotation* 
-keep class com.parse.** { *; } 

不要添加-libraryjars選項,因爲Android編譯過程已經自動指定所有必要-injars-outjars,並且-libraryjars爲您服務。它只會導致有關重複類的警告。

4

礦固定通過添加這樣的:

-keep class com.parse.* { *; } 
-dontwarn com.parse.** 

參考:this post

+0

感謝您的參考。 – Anonsage 2015-07-13 21:26:20