blob: ff0cc8fe400b037fa423697436ce56a209deb800 [file] [log] [blame]
# 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 *;
}
# Functor classes with native methods implemented in Android.
-keep class com.android.webview.chromium.DrawFunctor
-keep class com.android.webview.chromium.DrawGLFunctor
-keep class com.android.webview.chromium.GraphicsUtils
# 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