mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
66 lines
2.0 KiB
Plaintext
66 lines
2.0 KiB
Plaintext
|
# Copyright 2017 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.
|
||
|
|
||
|
# Proguard flags for what should be kept in the main dex. Only used
|
||
|
# during main dex list determination, not during actual proguarding.
|
||
|
|
||
|
-keep @org.chromium.base.annotations.MainDex class * {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
-keepclasseswithmembers class * {
|
||
|
@org.chromium.base.annotations.MainDex <methods>;
|
||
|
}
|
||
|
|
||
|
# Assume all IDL-generated classes should be kept. They can't reference other
|
||
|
# non-framework classes, so fairly low-risk.
|
||
|
-keepclasseswithmembers class * {
|
||
|
public static ** asInterface(android.os.IBinder);
|
||
|
}
|
||
|
|
||
|
# Required when code coverage is enabled.
|
||
|
-keep class com.vladium.** {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
# Renderers / GPU process don't load secondary dex.
|
||
|
-keep public class * extends org.chromium.base.process_launcher.ChildProcessService {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
# WebView doesn't load secondary dex.
|
||
|
-keep public class com.android.webview.** {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
-keep public class org.chromium.android_webview.** {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
# Used by tests for secondary dex extraction.
|
||
|
-keep class android.support.v4.content.ContextCompat {
|
||
|
*;
|
||
|
}
|
||
|
|
||
|
# Need test classes to be in the main dex because test listing does not
|
||
|
# load secondary dex on Dalvik devices.
|
||
|
-keep @**.RunWith class * {}
|
||
|
|
||
|
# The following are based on $SDK_BUILD_TOOLS/mainDexClasses.rules
|
||
|
# Ours differ in that:
|
||
|
# 1. It omits -keeps for application / instrumentation / backupagents (these are
|
||
|
# redundant since they are added by aapt's main dex list rules output).
|
||
|
# 2. Omits keep for Application.attachBaseContext(), which is overly broad.
|
||
|
# 3. Omits keep for all annotations, which is also overly broad (and pulls in
|
||
|
# any class that has an @IntDef).
|
||
|
|
||
|
######## START mainDexClasses.rules ########
|
||
|
|
||
|
# Keep old fashion tests in the main dex or they'll be silently ignored by InstrumentationTestRunner
|
||
|
-keep public class * extends android.test.InstrumentationTestCase {
|
||
|
<init>();
|
||
|
}
|
||
|
|
||
|
######## END mainDexClasses.rules ########
|