Home | History | Annotate | Download | only in core
      1 # see http://sourceforge.net/tracker/?func=detail&aid=2787465&group_id=54750&atid=474707
      2 -optimizations !code/simplification/arithmetic
      3 -optimizations !code/simplification/cast
      4 
      5 # To prevent name conflict in incremental obfuscation.
      6 -useuniqueclassmembernames
      7 
      8 # Some classes in the libraries extend package private classes to chare common functionality
      9 # that isn't explicitly part of the API
     10 -dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers
     11 
     12 # For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
     13 -keepclassmembers enum * {
     14     public static **[] values();
     15     public static ** valueOf(java.lang.String);
     16 }
     17 
     18 # For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
     19 -keepclasseswithmembernames class * {
     20     native <methods>;
     21 }
     22 
     23 # class$ methods are inserted by some compilers to implement .class construct,
     24 # see http://proguard.sourceforge.net/manual/examples.html#library
     25 -keepclassmembernames class * {
     26     java.lang.Class class$(java.lang.String);
     27     java.lang.Class class$(java.lang.String, boolean);
     28 }
     29 
     30 # Keep serializable classes and necessary members for serializable classes
     31 # Copied from the ProGuard manual at http://proguard.sourceforge.net.
     32 -keepnames class * implements java.io.Serializable
     33 -keepclassmembers class * implements java.io.Serializable {
     34     static final long serialVersionUID;
     35     private static final java.io.ObjectStreamField[] serialPersistentFields;
     36     !static !transient <fields>;
     37     private void writeObject(java.io.ObjectOutputStream);
     38     private void readObject(java.io.ObjectInputStream);
     39     java.lang.Object writeReplace();
     40     java.lang.Object readResolve();
     41 }
     42 
     43 # Please specify classes to be kept explicitly in your package's configuration.
     44 # -keep class * extends android.app.Activity
     45 # -keep class * extends android.view.View
     46 # -keep class * extends android.app.Service
     47 # -keep class * extends android.content.BroadcastReceiver
     48 # -keep class * extends android.content.ContentProvider
     49 # -keep class * extends android.preference.Preference
     50 # -keep class * extends android.app.BackupAgent
     51 
     52 #-keep class * implements android.os.Parcelable {
     53 #  public static final android.os.Parcelable$Creator *;
     54 #}
     55 
     56 # The support library contains references to newer platform versions.
     57 # Don't warn about those in case this app is linking against an older
     58 # platform version.  We know about them, and they are safe.
     59 # See proguard-android.txt in the SDK package.
     60 -dontwarn android.support.**
     61