# To enable ProGuard in your project, edit
# 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
# For more details, see
#   [url][/url]

# 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 *;

##---------------Begin: proguard configuration common for all Android apps ----------
-optimizationpasses 5
-dump class_files.txt
-printseeds seeds.txt
-printusage unused.txt
-printmapping mapping.txt
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

#=======================[1] External JAR =====================
-libraryjars D:/Android/lib/httpclient-4.1.1.jar
-libraryjars D:/Android/lib/httpcore-4.3.3.jar
-libraryjars D:/Android/lib/httpmime-4.3.3.jar

-libraryjars D:/temp/AnonymousChatRoulette/libs/android-support-v4.jar
-libraryjars D:/temp/AnonymousChatRoulette/libs/android-support-v7-appcompat.jar
#======================= END_External JAR ==================

-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
-repackageclasses ''

-dontwarn org.apache.harmony.**
-dontwarn com.tonicsystems.**
-dontwarn org.firebirdsql.**
-dontwarn org.antlr.**
-dontwarn org.apache.**
#=======================[2] Warning error 'class not found fix' =====================
-dontwarn com.koushikdutta.http.**

-dontwarn org.apache.log4j.**
-dontwarn org.apache.commons.logging.**
-dontwarn org.slf4j.**
-dontwarn org.json.*

-keep class javax.** { *; }
-keep class org.** { *; }
-keep class twitter4j.** { *; }
#======================= END_Warning error 'class not found fix' =====================

-keep public class * extends
-keep public class * extends
-keep public class * extends
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends
-keep public class * extends android.preference.Preference
-keep public class

# Explicitly preserve all serialization members. The Serializable interface
# is only a marker interface, so it wouldn't save them.
-keepclassmembers class * implements {
static final long serialVersionUID;
private static final[] serialPersistentFields;
private void writeObject(;
private void readObject(;
java.lang.Object writeReplace();
java.lang.Object readResolve();

# Preserve all native method names and the names of their classes.
-keepclasseswithmembernames class * {
native <methods>;

-keepclasseswithmembernames class * {
public <init>(android.content.Context, android.util.AttributeSet);

-keepclasseswithmembernames class * {
public <init>(android.content.Context, android.util.AttributeSet, int);

# Preserve static fields of inner classes of R classes that might be accessed
# through introspection.
-keepclassmembers class **.R$* {
public static <fields>;

# Preserve the special static methods that are required in all enumeration classes.
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);

-keep public class * {
public protected *;

-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;