OLD | NEW |
1 # Keep annotations used by chromium to keep members referenced by native code | 1 # Keep annotations used by chromium to keep members referenced by native code |
2 -keep class org.chromium.base.*Native* | 2 -keep class org.chromium.base.*Native* |
3 -keep class org.chromium.base.JNINamespace | 3 -keep class org.chromium.base.JNINamespace |
4 -keepclasseswithmembers class org.chromium.** { | 4 -keepclasseswithmembers class org.chromium.** { |
5 @org.chromium.base.AccessedByNative <fields>; | 5 @org.chromium.base.annotations.AccessedByNative <fields>; |
6 } | 6 } |
7 -keepclasseswithmembers class org.chromium.** { | 7 -keepclasseswithmembers class org.chromium.** { |
8 @org.chromium.base.*Native* <methods>; | 8 @org.chromium.base.*Native* <methods>; |
9 } | 9 } |
10 | 10 |
11 # TODO(mef) remove unnecessary classes from base, so we don't have to preserve | 11 # TODO(mef) remove unnecessary classes from base, so we don't have to preserve |
12 # their methods | 12 # their methods |
13 -keep class org.chromium.** { | 13 -keep class org.chromium.** { |
14 native <methods>; | 14 native <methods>; |
15 } | 15 } |
16 | 16 |
17 # Needed so that multiple optimization passes will detect annotations | 17 # Needed so that multiple optimization passes will detect annotations |
18 -keepattributes *Annotation* | 18 -keepattributes *Annotation* |
19 | 19 |
20 # Keep methods used by reflection and native code | 20 # Keep methods used by reflection and native code |
21 -keep class org.chromium.base.UsedBy* | 21 -keep class org.chromium.base.UsedBy* |
22 -keep @org.chromium.base.UsedBy* class * | 22 -keep @org.chromium.base.UsedBy* class * |
23 -keepclassmembers class * { | 23 -keepclassmembers class * { |
24 @org.chromium.base.UsedBy* *; | 24 @org.chromium.base.UsedBy* *; |
25 } | 25 } |
26 | 26 |
27 # Suppress unnecessary warnings. | 27 # Suppress unnecessary warnings. |
28 -dontnote org.chromium.net.ProxyChangeListener$ProxyReceiver | 28 -dontnote org.chromium.net.ProxyChangeListener$ProxyReceiver |
29 -dontnote org.chromium.net.AndroidKeyStore | 29 -dontnote org.chromium.net.AndroidKeyStore |
30 # Objects of this type are passed around by native code, but the class | 30 # Objects of this type are passed around by native code, but the class |
31 # is never used directly by native code. Since the class is not loaded, it does | 31 # is never used directly by native code. Since the class is not loaded, it does |
32 # not need to be preserved as an entry point. | 32 # not need to be preserved as an entry point. |
33 -dontnote org.chromium.net.UrlRequest$ResponseHeadersMap | 33 -dontnote org.chromium.net.UrlRequest$ResponseHeadersMap |
34 | 34 |
OLD | NEW |