|
|
|
# To enable ProGuard in your project, edit project.properties
|
|
|
|
# to define the proguard.config property as described in that file.
|
|
|
|
#
|
|
|
|
# Add project specific ProGuard rules here.
|
|
|
|
# By default, the flags in this file are appended to flags specified
|
|
|
|
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
|
|
|
# You can edit the include path and order by changing the ProGuard
|
|
|
|
# include property in project.properties.
|
|
|
|
#
|
|
|
|
# For more details, see
|
|
|
|
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
|
|
|
|
|
|
# Add any project specific keep options here:
|
|
|
|
|
|
|
|
# If your project uses WebView with JS, uncomment the following
|
|
|
|
# and specify the fully qualified class name to the JavaScript interface
|
|
|
|
# class:
|
|
|
|
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
|
|
|
# public *;
|
|
|
|
#}
|
|
|
|
|
|
|
|
-optimizationpasses 5
|
|
|
|
-dontusemixedcaseclassnames
|
|
|
|
-dontskipnonpubliclibraryclasses
|
|
|
|
-dontpreverify
|
|
|
|
-verbose
|
|
|
|
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
|
|
|
|
|
|
|
-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.content.BroadcastReceiver
|
|
|
|
-keep public class * extends android.content.ContentProvider
|
|
|
|
-keep public class * extends android.app.backup.BackupAgentHelper
|
|
|
|
-keep public class * extends android.preference.Preference
|
|
|
|
-keep public class com.android.vending.licensing.ILicensingService
|
|
|
|
-keep public class acr.browser.lightning.reading.*
|
|
|
|
-keep class org.lucasr.twowayview.** { *; }
|
|
|
|
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
-keepclassmembers class ** {
|
|
|
|
@com.squareup.otto.Subscribe public *;
|
|
|
|
@com.squareup.otto.Produce public *;
|
|
|
|
}
|
|
|
|
|
|
|
|
-assumenosideeffects class android.util.Log {
|
|
|
|
public static *** d(...);
|
|
|
|
public static *** v(...);
|
|
|
|
public static *** w(...);
|
|
|
|
public static *** i(...);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keep class butterknife.** { *; }
|
|
|
|
-dontwarn butterknife.internal.**
|
|
|
|
-keep class **$$ViewBinder { *; }
|
|
|
|
|
|
|
|
-keepclasseswithmembernames class * {
|
|
|
|
@butterknife.* <fields>;
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclasseswithmembernames class * {
|
|
|
|
@butterknife.* <methods>;
|
|
|
|
}
|
|
|
|
|
|
|
|
# this will fix a force close in ReadingActivity
|
|
|
|
-keep public class org.jsoup.** {
|
|
|
|
public *;
|
|
|
|
}
|
|
|
|
|
|
|
|
# Without this rule, openFileChooser does not get called on KitKat
|
|
|
|
-keep class acr.browser.lightning.view.LightningView$LightningChromeClient {
|
|
|
|
void openFileChooser(android.webkit.ValueCallback);
|
|
|
|
void openFileChooser(android.webkit.ValueCallback, java.lang.String);
|
|
|
|
void openFileChooser(android.webkit.ValueCallback, java.lang.String, java.lang.String);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclasseswithmembernames class * {
|
|
|
|
native <methods>;
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclasseswithmembers class * {
|
|
|
|
public <init>(android.content.Context, android.util.AttributeSet);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclasseswithmembers class * {
|
|
|
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclassmembers class * extends android.app.Activity {
|
|
|
|
public void *(android.view.View);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclassmembers enum * {
|
|
|
|
public static **[] values();
|
|
|
|
public static ** valueOf(java.lang.String);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keep class * implements android.os.Parcelable {
|
|
|
|
public static final android.os.Parcelable$Creator *;
|
|
|
|
}
|
|
|
|
|
|
|
|
# The support library contains references to newer platform versions.
|
|
|
|
# Don't warn about those in case this app is linking against an older
|
|
|
|
# platform version. We know about them, and they are safe.
|
|
|
|
-dontwarn android.support.**
|
|
|
|
|
|
|
|
# The I2P Java API bundled inside the I2P Android client library contains
|
|
|
|
# references to javax.naming classes that Android doesn't have. But those
|
|
|
|
# classes are never used on Android, and it is safe to ignore the warnings.
|
|
|
|
-dontwarn net.i2p.crypto.CertUtil
|
|
|
|
-dontwarn org.apache.http.conn.ssl.DefaultHostnameVerifier
|
|
|
|
|
|
|
|
-dontwarn org.apache.http.HttpHost
|