From 61e89db0863410d692a136fce09e1a9376eca51a Mon Sep 17 00:00:00 2001 From: Bananeweizen Date: Sun, 2 Jun 2013 08:08:21 +0200 Subject: refactoring: reuse default proguard settings * see http://tools.android.com/recent/proguardimprovements --- main/ant.properties | 2 -- main/proguard-project.txt | 69 +++++++++++++++++++++++++++++++++++++++++++++++ main/proguard.cfg | 69 ----------------------------------------------- main/project.properties | 5 +++- 4 files changed, 73 insertions(+), 72 deletions(-) create mode 100644 main/proguard-project.txt delete mode 100644 main/proguard.cfg (limited to 'main') diff --git a/main/ant.properties b/main/ant.properties index e3fa250..e92e080 100644 --- a/main/ant.properties +++ b/main/ant.properties @@ -15,7 +15,5 @@ # 'key.alias' for the name of the key to use. # The password will be asked during the build when you use the 'release' target. -proguard.config=proguard.cfg -proguard.jar=support/proguard.jar source.dir=src;thirdparty java.compilerargs=-Xlint \ No newline at end of file diff --git a/main/proguard-project.txt b/main/proguard-project.txt new file mode 100644 index 0000000..762d381 --- /dev/null +++ b/main/proguard-project.txt @@ -0,0 +1,69 @@ +-optimizationpasses 2 +-dontpreverify +-dontobfuscate +-allowaccessmodification +-optimizations !code/simplification/arithmetic,!code/allocation/variable + +-dontwarn java.beans.* +-dontwarn org.mapsforge.android.maps.Test* +-dontwarn android.support.v4.** +-dontwarn org.apache.log4j.** +-dontwarn org.apache.commons.logging.** +-dontwarn ch.boye.httpclientandroidlib.impl.auth.NegotiateScheme + +-dontnote org.apache.commons.logging.** + +-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 cgeo.geocaching.* +-keep class android.support.v4.os.** { *; } +-keep class ch.boye.httpclientandroidlib.conn.scheme.Scheme { *; } +-keep class ch.boye.httpclientandroidlib.params.HttpParams { *; } +-keep class ch.boye.httpclientandroidlib.client.HttpClient { *; } + +-dontnote ch.boye.httpclientandroidlib.** + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet); +} + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet, int); +} + +-keepclassmembers enum * { + public static **[] values(); + public static ** valueOf(java.lang.String); +} + +-keep class * implements android.os.Parcelable { + public static final android.os.Parcelable$Creator *; +} + +-keepclassmembers class **.R$* { + public static ; +} + +-keepclassmembers class cgeo.geocaching.** { + public void *(android.view.View); +} + +-keep public class * extends android.view.View { + public (android.content.Context); + public (android.content.Context, android.util.AttributeSet); + public (android.content.Context, android.util.AttributeSet, int); + public void set*(...); +} + +-keep public class cgeo.geocaching.backup.CentralBackupAgent + +-keepclassmembers class cgeo.geocaching.compatibility.AndroidLevel8 { + public static ; +} + +# Butter knife view injection, see http://jakewharton.github.io/butterknife/ +-dontwarn butterknife.Views$InjectViewProcessor +-keep class **$$ViewInjector { *; } diff --git a/main/proguard.cfg b/main/proguard.cfg deleted file mode 100644 index 762d381..0000000 --- a/main/proguard.cfg +++ /dev/null @@ -1,69 +0,0 @@ --optimizationpasses 2 --dontpreverify --dontobfuscate --allowaccessmodification --optimizations !code/simplification/arithmetic,!code/allocation/variable - --dontwarn java.beans.* --dontwarn org.mapsforge.android.maps.Test* --dontwarn android.support.v4.** --dontwarn org.apache.log4j.** --dontwarn org.apache.commons.logging.** --dontwarn ch.boye.httpclientandroidlib.impl.auth.NegotiateScheme - --dontnote org.apache.commons.logging.** - --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 cgeo.geocaching.* --keep class android.support.v4.os.** { *; } --keep class ch.boye.httpclientandroidlib.conn.scheme.Scheme { *; } --keep class ch.boye.httpclientandroidlib.params.HttpParams { *; } --keep class ch.boye.httpclientandroidlib.client.HttpClient { *; } - --dontnote ch.boye.httpclientandroidlib.** - --keepclasseswithmembers class * { - public (android.content.Context, android.util.AttributeSet); -} - --keepclasseswithmembers class * { - public (android.content.Context, android.util.AttributeSet, int); -} - --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keep class * implements android.os.Parcelable { - public static final android.os.Parcelable$Creator *; -} - --keepclassmembers class **.R$* { - public static ; -} - --keepclassmembers class cgeo.geocaching.** { - public void *(android.view.View); -} - --keep public class * extends android.view.View { - public (android.content.Context); - public (android.content.Context, android.util.AttributeSet); - public (android.content.Context, android.util.AttributeSet, int); - public void set*(...); -} - --keep public class cgeo.geocaching.backup.CentralBackupAgent - --keepclassmembers class cgeo.geocaching.compatibility.AndroidLevel8 { - public static ; -} - -# Butter knife view injection, see http://jakewharton.github.io/butterknife/ --dontwarn butterknife.Views$InjectViewProcessor --keep class **$$ViewInjector { *; } diff --git a/main/project.properties b/main/project.properties index a475ee2..894c810 100644 --- a/main/project.properties +++ b/main/project.properties @@ -3,9 +3,12 @@ # # This file must be checked in Version Control Systems. # -# To customize properties used by the Ant build system use, +# To customize properties used by the Ant build system edit # "ant.properties", and override values to adapt the script to your # project structure. +# +# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): +proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. target=Google Inc.:Google APIs:17 -- cgit v1.1