| # Copyright 2016 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # Fragments are loaded using reflection via Fragment.instantiate(Context,String) |
| # This can be improved upon - see crbug.com/622023. |
| -keep public class com.google.android.apps.chrome** extends android.app.Fragment |
| -keep public class org.chromium** extends android.app.Fragment |
| |
| # These classes aren't themselves referenced, but __ProcessService[0,1,2...] are |
| # referenced, and we look up these services by appending a number onto the name |
| # of the base class. Thus, we need to keep the base class name around so that |
| # the child classes can be looked up. |
| -keep class org.chromium.content.app.SandboxedProcessService |
| -keep class org.chromium.content.app.PrivilegedProcessService |
| |
| # TODO(ianwen): remove this config once proguard file inclusion from AAR is supported. |
| # CoordinatorLayout resolves the behaviors of its child components with reflection. |
| -keep public class * extends android.support.design.widget.CoordinatorLayout$Behavior { |
| public <init>(android.content.Context, android.util.AttributeSet); |
| public <init>(); |
| } |
| |
| # SearchView is used in website_preferences_menu.xml and is constructed by |
| # Android using reflection. |
| -keep class android.support.v7.widget.SearchView { |
| public <init>(...); |
| } |
| |
| # Google Play Services warnings are about its resources. |
| -dontwarn com.google.android.gms.R** |