commit dec3d9530dd43e1ac96cc7486fbade152b703501 Author: Nathan Freitas nathan@freitas.net Date: Mon Oct 24 21:55:01 2016 -0400
add proguard rules to optimize orbot binary --- app/proguard-rules.txt | 71 +++++++++++++++++++++++++++++++++++++++++ orbotservice/proguard-rules.pro | 17 ---------- proguard-project.txt | 20 ------------ 3 files changed, 71 insertions(+), 37 deletions(-)
diff --git a/app/proguard-rules.txt b/app/proguard-rules.txt new file mode 100644 index 0000000..126e1ff --- /dev/null +++ b/app/proguard-rules.txt @@ -0,0 +1,71 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /home/n8fr8/dev/android/sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# 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 +-dontskipnonpubliclibraryclassmembers +-dontpreverify +-verbose +-repackageclasses '' +-allowaccessmodification +-keepattributes *Annotation* + +-injars src/main/libs + +-outjars bin/classes-processed.jar + +-dontwarn javax.naming.** +-dontwarn android.support.** + + +#### +-keep class org.** { *; } +-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 + +-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 *; +} diff --git a/orbotservice/proguard-rules.pro b/orbotservice/proguard-rules.pro index 48384c8..e69de29 100644 --- a/orbotservice/proguard-rules.pro +++ b/orbotservice/proguard-rules.pro @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /home/n8fr8/dev/android/sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# 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 *; -#} diff --git a/proguard-project.txt b/proguard-project.txt index f2fe155..e69de29 100644 --- a/proguard-project.txt +++ b/proguard-project.txt @@ -1,20 +0,0 @@ -# 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 *; -#}
tor-commits@lists.torproject.org