From 92ca11f5f55a34a363c6405b39c7091de2b046b3 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Sat, 2 May 2015 01:44:38 +0200 Subject: [PATCH 1/2] Try to use proguard --- OsmAnd/build.gradle | 4 ++++ OsmAnd/proguard-project.txt | 4 ++++ OsmAnd/proguard.cfg | 40 ------------------------------------- 3 files changed, 8 insertions(+), 40 deletions(-) delete mode 100644 OsmAnd/proguard.cfg diff --git a/OsmAnd/build.gradle b/OsmAnd/build.gradle index 2139f1f771..d069630d87 100644 --- a/OsmAnd/build.gradle +++ b/OsmAnd/build.gradle @@ -141,9 +141,13 @@ android { buildTypes { debug { + minifyEnabled true + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' signingConfig signingConfigs.development } release { + minifyEnabled true + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' signingConfig signingConfigs.publishing } } diff --git a/OsmAnd/proguard-project.txt b/OsmAnd/proguard-project.txt index f2fe1559a2..bf789e55d6 100755 --- a/OsmAnd/proguard-project.txt +++ b/OsmAnd/proguard-project.txt @@ -18,3 +18,7 @@ #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} +# Allow obfuscation of android.support.v7.internal.view.menu.** +# to avoid problem on Samsung 4.2.2 devices with appcompat v21 +# see https://code.google.com/p/android/issues/detail?id=78377 +-keep class !android.support.v7.internal.view.menu.**,android.support.** {*;} \ No newline at end of file diff --git a/OsmAnd/proguard.cfg b/OsmAnd/proguard.cfg deleted file mode 100644 index b1cdf17b5b..0000000000 --- a/OsmAnd/proguard.cfg +++ /dev/null @@ -1,40 +0,0 @@ --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 - --keepclasseswithmembernames class * { - native ; -} - --keepclasseswithmembers class * { - public (android.content.Context, android.util.AttributeSet); -} - --keepclasseswithmembers class * { - public (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 *; -} From 5ebc7fe38c2cf4be888fe4639632885a785ceeca Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Sat, 2 May 2015 01:45:58 +0200 Subject: [PATCH 2/2] Run proguard --- OsmAnd/proguard-project.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/proguard-project.txt b/OsmAnd/proguard-project.txt index bf789e55d6..4990998450 100755 --- a/OsmAnd/proguard-project.txt +++ b/OsmAnd/proguard-project.txt @@ -21,4 +21,6 @@ # Allow obfuscation of android.support.v7.internal.view.menu.** # to avoid problem on Samsung 4.2.2 devices with appcompat v21 # see https://code.google.com/p/android/issues/detail?id=78377 --keep class !android.support.v7.internal.view.menu.**,android.support.** {*;} \ No newline at end of file +-keep class !android.support.v7.internal.view.menu.**,android.support.** {*;} +-keep class net.osmand.** { *; } +-keep interface net.osmand.** { *; }