OLD | NEW |
1 # Keep annotations used by chromium to keep members referenced by native code | |
2 -keep class org.chromium.base.annotations.*Native* | |
3 -keep class org.chromium.base.annotations.JNINamespace | |
4 -keepclasseswithmembers class org.chromium.** { | |
5 @org.chromium.base.annotations.AccessedByNative <fields>; | |
6 } | |
7 -keepclasseswithmembers class org.chromium.** { | |
8 @org.chromium.base.annotations.*Native* <methods>; | |
9 } | |
10 | |
11 # TODO(mef) remove unnecessary classes from base, so we don't have to preserve | |
12 # their methods | |
13 -keepclasseswithmembers class org.chromium.** { | |
14 native <methods>; | |
15 } | |
16 | |
17 # TODO(xunjieli): Find an alternative to explictly preserving public classes. | |
18 -keep public class org.chromium.net.* | |
19 | |
20 -keep class org.chromium.net.impl.CronetUrlRequest$HeadersList | 1 -keep class org.chromium.net.impl.CronetUrlRequest$HeadersList |
21 -keep class org.chromium.net.impl.ChromiumUrlRequest$ResponseHeadersMap | 2 -keep class org.chromium.net.impl.ChromiumUrlRequest$ResponseHeadersMap |
22 | 3 |
23 # Needed so that multiple optimization passes will detect annotations | |
24 -keepattributes *Annotation* | |
25 | |
26 # Keep methods used by reflection | |
27 -keep class org.chromium.base.annotations.UsedByReflection | |
28 -keep @org.chromium.base.annotations.UsedByReflection class * | |
29 -keepclassmembers class * { | |
30 @org.chromium.base.annotations.UsedByReflection *; | |
31 } | |
32 | |
33 # Suppress unnecessary warnings. | 4 # Suppress unnecessary warnings. |
34 -dontnote org.chromium.net.ProxyChangeListener$ProxyReceiver | 5 -dontnote org.chromium.net.ProxyChangeListener$ProxyReceiver |
35 -dontnote org.chromium.net.AndroidKeyStore | 6 -dontnote org.chromium.net.AndroidKeyStore |
36 # Needs 'void setTextAppearance(int)' (API level 23). | 7 # Needs 'void setTextAppearance(int)' (API level 23). |
37 -dontwarn org.chromium.base.ApiCompatibilityUtils | 8 -dontwarn org.chromium.base.ApiCompatibilityUtils |
38 # Needs 'boolean onSearchRequested(android.view.SearchEvent)' (API level 23). | 9 # Needs 'boolean onSearchRequested(android.view.SearchEvent)' (API level 23). |
39 -dontwarn org.chromium.base.WindowCallbackWrapper | 10 -dontwarn org.chromium.base.WindowCallbackWrapper |
40 # Generated for chrome apk and not included into cronet. | 11 # Generated for chrome apk and not included into cronet. |
41 -dontwarn org.chromium.base.library_loader.NativeLibraries | 12 -dontwarn org.chromium.base.library_loader.NativeLibraries |
42 # Generated for chrome apk and not included into cronet. | 13 # Generated for chrome apk and not included into cronet. |
43 -dontwarn org.chromium.base.multidex.ChromiumMultiDexInstaller | 14 -dontwarn org.chromium.base.multidex.ChromiumMultiDexInstaller |
44 # Objects of this type are passed around by native code, but the class | 15 # Objects of this type are passed around by native code, but the class |
45 # is never used directly by native code. Since the class is not loaded, it does | 16 # is never used directly by native code. Since the class is not loaded, it does |
46 # not need to be preserved as an entry point. | 17 # not need to be preserved as an entry point. |
47 -dontnote org.chromium.net.UrlRequest$ResponseHeadersMap | 18 -dontnote org.chromium.net.UrlRequest$ResponseHeadersMap |
48 # https://android.googlesource.com/platform/sdk/+/marshmallow-mr1-release/files/
proguard-android.txt#54 | 19 # https://android.googlesource.com/platform/sdk/+/marshmallow-mr1-release/files/
proguard-android.txt#54 |
49 -dontwarn android.support.** | 20 -dontwarn android.support.** |
50 | 21 |
OLD | NEW |