2012-02-22 76 views
0

由於proguard.cfg中的錯誤,我無法導出也無法生成我的android應用程序。它說 已過時的proguard文件;使用-keepclasseswithmember而不是-keepclasseswithmembernames proguard.cfgandroid lint錯誤

正如你所看到的,我已經用-keepclasseswithmembers修改了keepclasseswithmembernames。但我仍然得到錯誤

這是什麼原因?

-optimizationpasses 5 
-dontusemixedcaseclassnames 
-dontskipnonpubliclibraryclasses 
-dontpreverify 
-verbose 
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* 

-keep public class * extends android.app.Activity 
-keep public class * extends android.app.Application 
-keep public class * extends android.app.Service 
-keep public class * extends android.content.BroadcastReceiver 
-keep public class * extends android.content.ContentProvider 
-keep public class com.android.vending.licensing.ILicensingService 

-keepclasseswithmembers class * { 
    native <methods>; 
} 

-keepclasseswithmembers class * { 
    public <init>(android.content.Context, android.util.AttributeSet); 
} 

-keepclasseswithmembers class * { 
    public <init>(android.content.Context, android.util.AttributeSet, int); 
} 

-keepclassmembers enum * { 
    public static **[] values(); 
    public static ** valueOf(java.lang.String); 
} 

-keep class * implements android.os.Parcelable { 
    public static final android.os.Parcelable$Creator *; 
} 

回答

2

我複製了你的代碼並嘗試使用lint並且沒有錯誤。 如何創建新項目並從它複製proguard.cfg?最新的ADT似乎會生成非過時的proguard.cfg文件。

+0

謝謝,這是真的。出於某種原因,即使我修改了proguard.cfg文件,我仍會得到該錯誤。爲了解決這個問題,我只是從eclipse中的'Problems'視圖中刪除了錯誤。 (右鍵單擊錯誤 - 刪除)。然後,它建成罰款和出口罰款。 – Gabriel 2012-02-22 11:29:53