| OLD | NEW |
| 1 # Disable obfuscation for the following two packages. | 1 # Disable obfuscation for the following two packages. |
| 2 -keepnames,allowoptimization class com.google.android.apps.chrome.**,org.chromiu
m.** { | 2 -keepnames,allowoptimization class com.google.android.apps.chrome.**,org.chromiu
m.** { |
| 3 *; | 3 *; |
| 4 } | 4 } |
| 5 | 5 |
| 6 # Fragments are loaded using reflection via Fragment.instantiate(Context,String) | 6 # Fragments are loaded using reflection via Fragment.instantiate(Context,String) |
| 7 # This can be improved upon - see crbug.com/622023. | 7 # This can be improved upon - see crbug.com/622023. |
| 8 -keep public class com.google.android.apps.chrome** extends android.app.Fragment | 8 -keep public class com.google.android.apps.chrome** extends android.app.Fragment |
| 9 -keep public class org.chromium** extends android.app.Fragment | 9 -keep public class org.chromium** extends android.app.Fragment |
| 10 | 10 |
| 11 # Keep protobuf code used via reflection | 11 # Keep protobuf code used via reflection |
| 12 # TODO(tonyg): Removing these -keeps results in new notes, but nothing seems to | 12 # TODO(tonyg): Removing these -keeps results in new notes, but nothing seems to |
| 13 # break. This exclusion costs almost 100k of dex size so consider replacing it | 13 # break. This exclusion costs almost 100k of dex size so consider replacing it |
| 14 # with a -dontnote after more testing. | 14 # with a -dontnote after more testing. |
| 15 -keep class com.google.protobuf.** { | 15 -keep class com.google.protobuf.** { |
| 16 *** newBuilder(); | 16 *** newBuilder(); |
| 17 *** parseFrom(java.io.InputStream); | 17 *** parseFrom(java.io.InputStream); |
| 18 } | 18 } |
| 19 | 19 |
| 20 # Keep the client interfaces for cacheinvalidation as they are used as | 20 # Keep the client interfaces for cacheinvalidation as they are used as |
| 21 # argument types for some of our code that we're keeping and proguard warns | 21 # argument types for some of our code that we're keeping and proguard warns |
| 22 # otherwise. | 22 # otherwise. |
| 23 -keep class com.google.ipc.invalidation.external.client.** { | 23 -keep class com.google.ipc.invalidation.external.client.** { |
| 24 *; | 24 *; |
| 25 } | 25 } |
| 26 | 26 |
| 27 # Keep all Parcelables as they might be marshalled outside Chrome. | 27 # Keep all Parcelables as they might be marshalled outside Chrome. |
| 28 -keepnames class * implements android.os.Parcelable { | 28 -keepclassmembernames class * implements android.os.Parcelable { |
| 29 public static final ** CREATOR; | 29 public static final ** CREATOR; |
| 30 } | 30 } |
| 31 | 31 |
| 32 # SearchView is used in website_preferences_menu.xml and is constructed by | 32 # SearchView is used in website_preferences_menu.xml and is constructed by |
| 33 # Android using reflection. | 33 # Android using reflection. |
| 34 -keep class android.support.v7.widget.SearchView { | 34 -keep class android.support.v7.widget.SearchView { |
| 35 public <init>(...); | 35 public <init>(...); |
| 36 } | 36 } |
| 37 | 37 |
| 38 # Google Play Services warnings are about its resources. | 38 # Google Play Services warnings are about its resources. |
| 39 -dontwarn com.google.android.gms.R** | 39 -dontwarn com.google.android.gms.R** |
| 40 | 40 |
| 41 # The support library contains references to newer platform versions. | 41 # The support library contains references to newer platform versions. |
| 42 # Don't warn about those in case this app is linking against an older | 42 # Don't warn about those in case this app is linking against an older |
| 43 # platform version. We know about them, and they are safe. | 43 # platform version. We know about them, and they are safe. |
| 44 -dontwarn android.support.** | 44 -dontwarn android.support.** |
| 45 | 45 |
| 46 # Proguard mistakenly optimizes away some null checks on final fields | 46 # Proguard mistakenly optimizes away some null checks on final fields |
| 47 # in the support library. | 47 # in the support library. |
| 48 # See https://sourceforge.net/p/proguard/bugs/531/#fdc9/41e2 | 48 # See https://sourceforge.net/p/proguard/bugs/531/#fdc9/41e2 |
| 49 -keepclassmembers,allowshrinking,allowobfuscation class android.support.v7.widge
t.AppCompatButton { | 49 -keepclassmembers,allowshrinking,allowobfuscation class android.support.v7.widge
t.AppCompatButton { |
| 50 !static final <fields>; | 50 !static final <fields>; |
| 51 } | 51 } |
| OLD | NEW |