2

J'ai essayé d'utiliser proguard avec mon application Android Wear, mais je ne suis pas sûr de ce que devraient être les règles. Dans mon dossier de l'application à l'usure gradle Je:Android Wear Proguard

release { 
    minifyEnabled true 
    shrinkResources true 
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
} 

et mon proguard-rules.pro ressemble:

-keepattributes SourceFile,LineNumberTable 

Quand je lance mon application, les travaux interface utilisateur, mais tout ce qui accède à la DataApi manque. Quelqu'un at-il des idées/expériences?

Répondre

2

Je l'ai à travailler en combinant des parties de Firefox's proguard config avec certains de mes propres:

-keep class com.google.android.gms.common.api.** {*;} 
-keep class com.google.android.gms.wearable.** {*;} 

# Firefox 
-keep class * extends java.util.ListResourceBundle { 
    protected Object[][] getContents(); 
} 
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { 
    public static final *** NULL; 
} 
-keepnames @com.google.android.gms.common.annotation.KeepName class * 
-keepclassmembernames class * { 
    @com.google.android.gms.common.annotation.KeepName *; 
} 
-keepnames class * implements android.os.Parcelable { 
    public static final ** CREATOR; 
} 
-keepattributes SourceFile,LineNumberTable 
# Preserve all fundamental application classes. 
-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.app.backup.BackupAgentHelper 
-keep public class * extends android.content.BroadcastReceiver 
-keep public class * extends android.content.ContentProvider 
-keep public class * extends android.preference.Preference 

-keep public class * extends android.support.v4.app.Fragment 

# Preserve all native method names and the names of their classes. 
-keepclasseswithmembernames class * { 
    native <methods>; 
} 

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

-keepclassmembers class * extends android.app.Activity { 
    public void *(android.view.View); 
} 

# Preserve enums. (For awful reasons, the runtime accesses them using introspection...) 
-keepclassmembers enum * { 
    *; 
}