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.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 -keep @org.chromium.base.JNINamespace class org.chromium.** { | 10 |
| 11 # TODO(mef) remove unnecessary classes from base, so we don't have to preserve |
| 12 # their methods |
| 13 -keepclasseswithmembers class org.chromium.** { |
11 native <methods>; | 14 native <methods>; |
12 } | 15 } |
| 16 |
13 -dontnote org.chromium.net.AndroidKeyStore | 17 -dontnote org.chromium.net.AndroidKeyStore |
14 | 18 |
| 19 # Needed so that multiple optimization passes will detect annotations |
| 20 -keepattributes *Annotation* |
| 21 |
| 22 # Keep methods used by reflection and native code |
| 23 -keep class org.chromium.net.UsedBy* |
| 24 -keep @org.chromium.net.UsedBy* class * |
| 25 -keepclassmembers class * { |
| 26 @org.chromium.net.UsedBy* *; |
| 27 } |
OLD | NEW |