| OLD | NEW |
| 1 # Don't rename anything, it makes stack traces unintelligible. We only allow the | 1 # Don't rename anything, it makes stack traces unintelligible. We only allow the |
| 2 # obfuscation pass to run so that we can discard attributes like local variable | 2 # obfuscation pass to run so that we can discard attributes like local variable |
| 3 # tables. | 3 # tables. |
| 4 -keepnames class *** { *; } | 4 -keepnames class *** { *; } |
| 5 | 5 |
| 6 # The following chart was created on Aug. 11, 2016, to decide on 3 optimization |
| 7 # passes. |
| 8 # optimization passes | time | .dex size | dirty memory |
| 9 # ----------------------------------------------------------------- |
| 10 # 1 | 0:13 | 1022588 | 97772 |
| 11 # 2 | 0:17 | 1019200 | 97472 |
| 12 # 3 | 0:18 | 1018472 | 97424 |
| 13 # 4 | 0:21 | 1018392 | 97416 |
| 14 # 5 | 0:26 | 1018360 | 97416 |
| 15 -optimizationpasses 3 |
| 16 |
| 17 # Class merging messes up stacktraces beyond the point of them being |
| 18 # deobfuscatable. If turned on, it would give us a 1% reduction in .dex size. |
| 19 -optimizations !class/merging/* |
| 20 |
| 21 # Allowing Proguard to change modifiers. This change shrinks the .dex size by |
| 22 # 3.7%. |
| 23 -allowaccessmodification |
| 6 | 24 |
| 7 # Keep the factory and its public members; it's the main entry point used by the | 25 # Keep the factory and its public members; it's the main entry point used by the |
| 8 # framework. | 26 # framework. |
| 9 -keep class com.android.webview.chromium.WebViewChromiumFactoryProvider { | 27 -keep class com.android.webview.chromium.WebViewChromiumFactoryProvider { |
| 10 public *; | 28 public *; |
| 11 } | 29 } |
| 12 | 30 |
| 13 # This is the main entry point for APIs. It is kept to make developing with | 31 # This is the main entry point for APIs. It is kept to make developing with |
| 14 # unreleased Android easier. | 32 # unreleased Android easier. |
| 15 -keep class com.android.webview.chromium.WebViewChromium { | 33 -keep class com.android.webview.chromium.WebViewChromium { |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 #TODO(hush): remove after N release. crbug.com/546762 | 74 #TODO(hush): remove after N release. crbug.com/546762 |
| 57 -keep class com.android.webview.chromium.ContentSettingsAdapter { | 75 -keep class com.android.webview.chromium.ContentSettingsAdapter { |
| 58 public void setDisabledActionModeMenuItems(int); | 76 public void setDisabledActionModeMenuItems(int); |
| 59 public int getDisabledActionModeMenuItems(); | 77 public int getDisabledActionModeMenuItems(); |
| 60 } | 78 } |
| 61 | 79 |
| 62 # Ignore notes and warnings about the support library, which uses reflection and | 80 # Ignore notes and warnings about the support library, which uses reflection and |
| 63 # may reference classes no longer in the SDK. | 81 # may reference classes no longer in the SDK. |
| 64 -dontnote android.support.** | 82 -dontnote android.support.** |
| 65 -dontwarn android.support.** | 83 -dontwarn android.support.** |
| OLD | NEW |