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