OLD | NEW |
| (Empty) |
1 # Keep line number information, useful for stack traces. | |
2 -keepattributes SourceFile,LineNumberTable | |
3 | |
4 # Keep all runtime visible annotations | |
5 -keepattributes RuntimeVisibleAnnotations | |
6 | |
7 # Keep the annotations. | |
8 -keep @interface *** | |
9 | |
10 # A lot of code in org.chromium is used by both the internal Chrome code and by | |
11 # ChromeShell tests. It doesn't make sense to mark such things as | |
12 # @VisibleForTesting. For now, just keep everything in org.chromium. | |
13 -keep class org.chromium.** { | |
14 *; | |
15 } | |
16 | |
17 # Keep code annotated with the following annotations. | |
18 -keep class * { | |
19 @**.AccessedByNative <fields>; | |
20 @**.CalledByNative <methods>; | |
21 @**.CalledByNativeUnchecked <methods>; | |
22 @**.JavascriptInterface <methods>; | |
23 @**.NativeCall <methods>; | |
24 @**.UsedByReflection <methods>; | |
25 @**.VisibleForTesting *; | |
26 native <methods>; | |
27 } | |
28 | |
29 # Keep the client interfaces for cacheinvalidation as they are used as | |
30 # argument types for some of our code that we're keeping and proguard warns | |
31 # otherwise. | |
32 -keep class com.google.ipc.invalidation.external.client.** { | |
33 *; | |
34 } | |
35 -keep class com.google.protos.ipc.invalidation.** { | |
36 *; | |
37 } | |
38 | |
39 # Keep all enum values and valueOf methods. See | |
40 # http://proguard.sourceforge.net/index.html#manual/examples.html | |
41 # for the reason for this. Also, see http://crbug.com/248037. | |
42 -keepclassmembers enum * { | |
43 public static **[] values(); | |
44 public static ** valueOf(java.lang.String); | |
45 } | |
46 | |
47 # Keep all Parcelables as they might be marshalled outside Chrome. | |
48 -keep class * implements android.os.Parcelable { | |
49 public static final ** CREATOR; | |
50 } | |
51 | |
52 # SearchView is used in website_preferences_menu.xml and is constructed by | |
53 # Android using reflection. | |
54 -keep class android.support.v7.widget.SearchView { | |
55 public <init>(...); | |
56 } | |
57 | |
58 -keep class android.support.v7.app.AlertDialog { | |
59 public ** getButton(int); | |
60 } | |
61 | |
62 # Google Play Services warnings are about its resources. | |
63 -dontwarn com.google.android.gms.R** | |
64 | |
65 # TODO(yfriedman): Remove when crbug.com/488192 is fixed. | |
66 -dontwarn org.apache.http.** | |
67 | |
68 # The support library contains references to newer platform versions. | |
69 # Don't warn about those in case this app is linking against an older | |
70 # platform version. We know about them, and they are safe. | |
71 -dontwarn android.support.** | |
72 | |
73 -dontwarn javax.annotation.Nullable | |
74 | |
75 # TODO(aurimas): remove this when Google Play Services no longer uses setLatestE
ventInfo call | |
76 # that was deprecated in Android M. It is save to suppress this according to b/1
8510449. | |
77 -dontwarn android.app.Notification | |
OLD | NEW |