2011-12-23 11 views

Trả lời

26

Đây là một lỗi với các công cụ SDK v11. http://code.google.com/p/android/issues/detail?id=16384

Khi Lint tạo ra lỗi,

  • đi đến cảnh báo lint xem (Window> Show View> Other> Android> Cảnh báo Lint) và nhấn đúp chuột vào lỗi để sửa đổi proguard.cfg

  • đổi tên "keepclasseswithmembernames" thành "keepclasseswithmembers" trên dòng nó hiển thị lỗi và lưu.

  • chạy Lint một lần nữa (bấm refresh trong xem cảnh báo Lint)

  • lặp lại đổi tên nếu nó hiển thị cảnh báo hơn nữa trong dòng tiếp theo.

Tôi đã thay đổi tên của tôi thành dạng này.

-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 

-keepclasseswithmembernames 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 *; 
} 
Các vấn đề liên quan