| # 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. |
| |
| -keepclassmembers class org.chromium.android_webview.AwPdfExporter { |
| android.view.ViewGroup mContainerView; |
| } |
| |
| # Keep the factory and its public members; it's the main entry point used by the |
| # framework. |
| -keep class com.android.webview.chromium.WebViewChromiumFactoryProvider { |
| public *; |
| } |
| |
| -keep class * implements android.webkit.WebViewFactoryProvider$Statics { |
| *; |
| } |
| |
| -keep class com.android.webview.chromium.ContentSettingsAdapter { |
| public *; |
| } |
| |
| -keep class com.android.webview.chromium.WebViewChromiumFactoryProviderFor* { |
| public *; |
| } |
| |
| -keep class com.android.webview.chromium.WebViewDatabaseAdapter { |
| public *; |
| } |
| |
| # This is the main entry point for APIs. It is kept to make developing with |
| # unreleased Android easier. |
| -keep class com.android.webview.chromium.WebViewChromium { |
| public *; |
| } |
| |
| # Linker dynamically casts to $TestRunner when running tests. We don't run these |
| # tests in WebView. |
| -dontnote org.chromium.base.library_loader.Linker$TestRunner |
| |
| # Don't note about the API 21 compatibility code which references various |
| # hidden APIs via reflection. |
| -dontnote com.android.webview.chromium.WebViewDelegateFactory$Api21CompatibilityDelegate |
| |
| # DefaultAndroidKeyStore uses reflection to access internal OpenSSL state. |
| -dontnote org.chromium.net.DefaultAndroidKeyStore |
| |
| # MediaPlayerBridge uses reflection to access internal metadata. |
| -dontnote org.chromium.media.MediaPlayerBridge |
| |
| # ProxyChangeListener$ProxyReceiver uses reflection to access internal |
| # android.net.ProxyProperties. |
| -dontnote org.chromium.net.ProxyChangeListener$ProxyReceiver |
| |
| # Silence warnings about reflection used to check for onShow/HideCustomView. |
| # This class is not really kept since it's in a library jar. |
| -keep class android.webkit.WebChromeClient { |
| void onShowCustomView(...); |
| void onHideCustomView(); |
| } |
| |
| -keep class org.chromium.android_webview.AwBrowserProcess { |
| java.nio.channels.FileLock sExclusiveFileLock; |
| } |
| |
| # Accessed via reflection but not present in all builds |
| -keep class com.android.webview.chromium.AwSafeBrowsingApiHandler { |
| AwSafeBrowsingApiHandler(...); |
| } |
| -dontnote com.android.webview.chromium.AwSafeBrowsingApiHandler |
| |
| # We strip some unused resources when preprocessing the GMS client libs. |
| -dontwarn com.google.android.gms.R** |
| |
| # Trichrome builds don't include a native library list in the main APK; it's |
| # picked up from the library APK at runtime. |
| -dontwarn org.chromium.base.library_loader.NativeLibraries |