summaryrefslogtreecommitdiffstats
path: root/mobile/android/config/proguard/proguard.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/config/proguard/proguard.cfg')
-rw-r--r--mobile/android/config/proguard/proguard.cfg185
1 files changed, 0 insertions, 185 deletions
diff --git a/mobile/android/config/proguard/proguard.cfg b/mobile/android/config/proguard/proguard.cfg
deleted file mode 100644
index f44730e72..000000000
--- a/mobile/android/config/proguard/proguard.cfg
+++ /dev/null
@@ -1,185 +0,0 @@
-# Dalvik renders preverification unuseful (Would just slightly bloat the file).
--dontpreverify
-
-# Uncomment to have Proguard list dead code detected during the run - useful for cleaning up the codebase.
-# -printusage
-
--dontskipnonpubliclibraryclassmembers
--verbose
--allowaccessmodification
-
-# Preserve all fundamental application classes.
--keep public class * extends android.app.Activity
--keep public class * extends android.app.Application
--keep public class * extends android.app.Service
--keep public class * extends android.app.backup.BackupAgentHelper
--keep public class * extends android.content.BroadcastReceiver
--keep public class * extends android.content.ContentProvider
--keep public class * extends android.preference.Preference
--keep public class * extends org.mozilla.gecko.fxa.sync.FxAccountSyncAdapter
--keep class org.mozilla.gecko.fxa.sync.FxAccountSyncAdapter
-
--keep public class * extends android.support.v4.app.Fragment
-
-# Preserve all native method names and the names of their classes.
--keepclasseswithmembernames class * {
- native <methods>;
-}
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet, int);
-}
-
--keepclassmembers class * extends android.app.Activity {
- public void *(android.view.View);
-}
-
-
-# Keep setters in Views so that animations can still work.
-# See http://proguard.sourceforge.net/manual/examples.html#beans
-# From tools/proguard/proguard-android.txt.
--keepclassmembers public class * extends android.view.View {
- void set*(***);
- *** get*();
-}
-
-# Keep setters in support Fragment so that Robocop tests work,
-# specifically testBrowserSearchVisibility.
--keepclassmembers public class * extends android.support.v4.app.Fragment {
- void set*(***);
- *** get*();
-}
-
-# Preserve enums. (For awful reasons, the runtime accesses them using introspection...)
--keepclassmembers enum * {
- *;
-}
-
-#
-# Rules from ProGuard's Android example:
-# http://proguard.sourceforge.net/manual/examples.html#androidapplication
-#
-
-# Keep a fixed source file attribute and all line number tables to get line
-# numbers in the stack traces.
-# You can comment this out if you're not interested in stack traces.
-
--renamesourcefileattribute SourceFile
--keepattributes SourceFile,LineNumberTable
-
-# RemoteViews might need annotations.
-
--keepattributes *Annotation*
-
-# Preserve all View implementations, their special context constructors, and
-# their setters.
-
--keep public class * extends android.view.View {
- public <init>(android.content.Context);
- public <init>(android.content.Context, android.util.AttributeSet);
- public <init>(android.content.Context, android.util.AttributeSet, int);
- public void set*(...);
-}
-
-# Preserve all classes that have special context constructors, and the
-# constructors themselves.
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet);
-}
-
-# Preserve the special fields of all Parcelable implementations.
-
--keepclassmembers class * implements android.os.Parcelable {
- static android.os.Parcelable$Creator CREATOR;
-}
-
-# Preserve static fields of inner classes of R classes that might be accessed
-# through introspection.
-
--keepclassmembers class **.R$* {
- public static <fields>;
-}
-
-# Preserve the required interface from the License Verification Library
-# (but don't nag the developer if the library is not used at all).
-
--keep public interface com.android.vending.licensing.ILicensingService
-
--dontnote com.android.vending.licensing.ILicensingService
-
-# The Android Compatibility library references some classes that may not be
-# present in all versions of the API, but we know that's ok.
-
--dontwarn android.support.**
-
-# Preserve all native method names and the names of their classes.
-
--keepclasseswithmembernames class * {
- native <methods>;
-}
-
-#
-# Mozilla-specific rules
-#
-# Merging classes can generate dex warnings about anonymous inner classes.
--optimizations !class/merging/horizontal
--optimizations !class/merging/vertical
-
-# This optimisation causes corrupt bytecode if we run more than two passes.
-# Testing shows that running the extra passes of everything else saves us
-# more than this optimisation does, so bye bye!
--optimizations !code/allocation/variable
-
-# Keep miscellaneous targets.
-
-# Keep Robocop targets. TODO: Can omit these from release builds. Also, Bug 916507.
-
-# Same formula as above...
--keep @interface org.mozilla.gecko.annotation.RobocopTarget
--keep @org.mozilla.gecko.annotation.RobocopTarget class *
--keepclassmembers class * {
- @org.mozilla.gecko.annotation.RobocopTarget *;
-}
--keepclassmembers @org.mozilla.gecko.annotation.RobocopTarget class * {
- *;
-}
--keepclasseswithmembers class * {
- @org.mozilla.gecko.annotation.RobocopTarget <methods>;
-}
--keepclasseswithmembers class * {
- @org.mozilla.gecko.annotation.RobocopTarget <fields>;
-}
-
--keep class **.R$*
-
-# Keep all interfaces that might be dynamically required by Java Addons.
--keep class org.mozilla.javaaddons.* {
- *;
-}
-
--keep class org.mozilla.javaaddons.*$* {
- *;
-}
-
-# Disable obfuscation because it makes exception stack traces more difficult to read.
--dontobfuscate
-
-# Suppress warnings about missing descriptor classes.
-#-dontnote **,!ch.boye.**,!org.mozilla.gecko.sync.**
-
--include "play-services-keeps.cfg"
-
-# Don't print spurious warnings from the support library.
-# See: http://stackoverflow.com/questions/22441366/note-android-support-v4-text-icucompatics-cant-find-dynamically-referenced-cl
--dontnote android.support.**
-
--include "adjust-keeps.cfg"
-
--include "leakcanary-keeps.cfg"
-
--include "appcompat-v7-keeps.cfg"
-
--include "proguard-android.cfg"
-
--include "../../geckoview/proguard-rules.txt"