2012-10-10 14:28:18 -04:00
|
|
|
-target 1.6
|
|
|
|
-dontusemixedcaseclassnames
|
|
|
|
-dontskipnonpubliclibraryclasses
|
|
|
|
-dontpreverify
|
|
|
|
-repackageclasses ''
|
|
|
|
-allowaccessmodification
|
|
|
|
-optimizations !code/simplification/arithmetic
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
|
|
|
|
-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.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*(...);
|
|
|
|
}
|
|
|
|
|
|
|
|
-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.content.Context {
|
|
|
|
public void *(android.view.View);
|
|
|
|
public void *(android.view.MenuItem);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclassmembers class * implements android.os.Parcelable {
|
|
|
|
static android.os.Parcelable$Creator CREATOR;
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclassmembers class **.R$* {
|
|
|
|
public static <fields>;
|
|
|
|
}
|
|
|
|
|
|
|
|
-keepclassmembers enum * {
|
|
|
|
public static **[] values();
|
|
|
|
public static ** valueOf(java.lang.String);
|
|
|
|
}
|
|
|
|
|
|
|
|
-keep @org.simpleframework.xml.Root public class * {
|
2013-06-14 16:31:49 -04:00
|
|
|
*;
|
2012-10-10 14:28:18 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
-dontwarn javax.xml.stream.**
|
|
|
|
-dontwarn com.bea.xml.stream.**
|
|
|
|
-dontwarn sun.misc.Unsafe
|
|
|
|
-dontwarn android.annotation.TargetApi
|
|
|
|
-dontwarn org.solovyev.common.math.visualisation.**
|
|
|
|
-dontwarn org.solovyev.common.math.graph.**
|
|
|
|
-dontwarn org.solovyev.common.math.algorithms.**
|
|
|
|
-dontwarn org.solovyev.common.drawing.**
|
|
|
|
-dontwarn org.joda.**
|
|
|
|
-dontwarn jscl.mathml.**
|
|
|
|
-dontwarn com.google.common.collect.MinMaxPriorityQueue
|
|
|
|
|
|
|
|
-keep class org.simpleframework.xml.** { *; }
|
2012-11-18 08:59:39 -05:00
|
|
|
-keep class * implements org.solovyev.android.calculator.model.MathPersistenceEntity
|
|
|
|
-keep class * implements org.solovyev.android.calculator.MathEntityPersistenceContainer
|
|
|
|
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
# LOGS
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
|
|
|
|
-assumenosideeffects class android.util.Log {
|
|
|
|
public static int v(...);
|
|
|
|
public static int d(...);
|
|
|
|
public static int i(...);
|
|
|
|
public static int w(...);
|
|
|
|
public static int e(...);
|
|
|
|
}
|
2012-10-10 14:28:18 -04:00
|
|
|
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
# SHERLOCK
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
|
|
|
|
-keep class android.support.v4.app.** { *; }
|
|
|
|
-keep interface android.support.v4.app.** { *; }
|
|
|
|
-keep class com.actionbarsherlock.** { *; }
|
|
|
|
-keep interface com.actionbarsherlock.** { *; }
|
|
|
|
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
# ACRA
|
|
|
|
#
|
|
|
|
#*********************************************************************
|
|
|
|
#
|
|
|
|
|
|
|
|
# we need line numbers in our stack traces otherwise they are pretty useless
|
|
|
|
-renamesourcefileattribute SourceFile
|
|
|
|
-keepattributes SourceFile,LineNumberTable
|
|
|
|
|
|
|
|
# ACRA needs "annotations" so add this...
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
|
|
|
|
# keep this class so that logging will show 'ACRA' and not a obfuscated name like 'a'.
|
|
|
|
# Note: if you are removing log messages elsewhere in this file then this isn't necessary
|
|
|
|
-keep class org.acra.ACRA {
|
2013-06-14 16:31:49 -04:00
|
|
|
*;
|
2012-10-10 14:28:18 -04:00
|
|
|
}
|
|
|
|
|
2012-12-05 03:37:30 -05:00
|
|
|
-keep class org.acra.ReportField {
|
2013-06-14 16:31:49 -04:00
|
|
|
*;
|
2012-12-05 03:37:30 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2012-10-10 14:28:18 -04:00
|
|
|
# keep this around for some enums that ACRA needs
|
|
|
|
-keep class org.acra.ReportingInteractionMode {
|
|
|
|
*;
|
|
|
|
}
|
|
|
|
|
|
|
|
# keep this otherwise it is removed by ProGuard
|
|
|
|
-keep public class org.acra.ErrorReporter
|
|
|
|
{
|
|
|
|
public void addCustomData(java.lang.String,java.lang.String);
|
|
|
|
}
|
|
|
|
|
|
|
|
# keep this otherwise it is removed by ProGuard
|
|
|
|
-keep public class org.acra.ErrorReporter
|
|
|
|
{
|
|
|
|
public org.acra.ErrorReporter$ReportsSenderWorker handleSilentException(java.lang.Throwable);
|
|
|
|
}
|