This is a configuration file for ProGuard.


This file is no longer maintained and is not used by new (2.2+) versions of the

Android plugin for Gradle. Instead, the Android plugin for Gradle generates the

default rules at build time and stores them in the build directory.

Optimizations: If you don’t want to optimize, use the

proguard-android.txt configuration file instead of this one, which

turns off the optimization flags. Adding optimization introduces

certain risks, since for example not all optimizations performed by

ProGuard works on all versions of Dalvik. The following flags turn

off various optimizations known to have issues, but the list may not

be complete or up to date. (The “arithmetic” optimization can be

used if you are only targeting Android 2.0 or later.) Make sure you

test thoroughly if you go this route.

-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/,!class/merging/
-optimizationpasses 5

The remainder of this file is identical to the non-optimized version

of the Proguard configuration file (except that the other file has

flags to turn off optimization).


-keepattributes Annotation
-keep public class
-keep public class

For native methods, see

-keepclasseswithmembernames class * {
native ;

keep setters in Views so that animations can still work.


-keepclassmembers public class * extends android.view.View {
void set(***);
*** get

We want to keep methods in Activity that could be used in the XML attribute onClick

-keepclassmembers class * extends {
public void *(android.view.View);

For enumeration classes, see

-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);

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

-keepclassmembers class **.R$* {
public static ;

The support library contains references to newer platform versions.

Don’t warn about those in case this app is linking against an older

platform version. We know about them, and they are safe.


Understand the @Keep support annotation.

-keep class

-keep class * {*;}

-keepclasseswithmembers class * { ;

-keepclasseswithmembers class * { ;

-keepclasseswithmembers class * { (…);

Published by Michael Jones

One love, I want to further illustrate the importance of idenity and communication to me. I understand communication to drive and act as a catalyst for diversifying pros. This in the context of being about me proves to me the necessary ambiguity and of course the "leader intensive" roles of communication. During my undergrad I had a chance further education for a blog, and one thing I remember is it told me that writing is intensive and requires communication. Amid it as it is to be when projected to describe communication as the corner stone for the better evolution. With this being said, I am communication as gorged is important and Techrepublic similar, states this by saying, maintaining regular and open communication smooths the flow of instructions. Sparking this conscious recedes from an early assessment or preparation to become a person. This in-part was presented by researching about writers and my understanding of compliance and leading as the "Leader", but more importantly communication, because the essential progress is the indicator anything is being communicated. In ways communication needs to be received and understood. This proactive approach to communication ensures the success of the Communication in all talks. The relation an at many levels a great importance, because it inhibits the ability to address goals, objectives, and again flow. Rather the documented writing address aspects and topics: Keyed, results, quality reviews, etc. I am the plan, is the concern, which sets a reasonable expectation for speech in regards to project communication.