| OLD | NEW |
| (Empty) |
| 1 # Keep line number information, useful for stack traces. | |
| 2 -keepattributes SourceFile,LineNumberTable | |
| 3 | |
| 4 # Keep the annotations. | |
| 5 -keep @interface *** | |
| 6 | |
| 7 # Disable obfuscation for the following package. | |
| 8 -keepnames class org.chromium.** { | |
| 9 *; | |
| 10 } | |
| 11 | |
| 12 # Keep all the primitive and String constants for for the following two packages
. | |
| 13 -keepclassmembers class org.chromium.** { | |
| 14 !private static final % *; | |
| 15 !private static final java.lang.String *; | |
| 16 } | |
| 17 | |
| 18 # Keep code annotated with the following annotations. | |
| 19 -keep class org.chromium.** { | |
| 20 @**.AccessedByNative <fields>; | |
| 21 @**.CalledByNative <methods>; | |
| 22 @**.CalledByNativeUnchecked <methods>; | |
| 23 @**.JavascriptInterface <methods>; | |
| 24 @**.NativeCall <methods>; | |
| 25 @**.UsedByReflection <methods>; | |
| 26 @**.VisibleForTesting *; | |
| 27 native <methods>; | |
| 28 } | |
| 29 | |
| 30 # Keep all runtime visible annotations | |
| 31 -keepattributes RuntimeVisibleAnnotations | |
| 32 | |
| 33 # Remove methods annotated with this if their return value is unused | |
| 34 -assumenosideeffects class * { | |
| 35 @org.chromium.base.annotations.RemovableInRelease <methods>; | |
| 36 } | |
| 37 | |
| 38 # Keep all enum values and valueOf methods. See | |
| 39 # http://proguard.sourceforge.net/index.html#manual/examples.html | |
| 40 # for the reason for this. Also, see http://crbug.com/248037. | |
| 41 -keepclassmembers enum * { | |
| 42 public static **[] values(); | |
| 43 public static ** valueOf(java.lang.String); | |
| 44 } | |
| 45 | |
| 46 # Keep all Parcelables as they might be marshalled outside Chrome. | |
| 47 -keepnames class * implements android.os.Parcelable { | |
| 48 public static final ** CREATOR; | |
| 49 } | |
| 50 | |
| 51 # The support library contains references to newer platform versions. | |
| 52 # Don't warn about those in case this app is linking against an older | |
| 53 # platform version. We know about them, and they are safe. | |
| 54 -dontwarn android.support.** | |
| 55 | |
| 56 # Everything below this is kept because they are referenced by the test APK. | |
| 57 -dontwarn javax.annotation.Nullable | |
| 58 | |
| 59 # TODO(aurimas): remove this when Google Play Services no longer uses setLatestE
ventInfo call | |
| 60 # that was deprecated in Android M. It is save to suppress this according to b/1
8510449. | |
| 61 -dontwarn android.app.Notification | |
| 62 | |
| 63 -dontwarn android.net.http.SslCertificate | |
| OLD | NEW |