# To enable ProGuard in your project, edit project.properties # 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 project.properties. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # 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 *; #} #-injars bin/classes #-injars libs #-outjars bin/classes-processed.jar # Using Google's License Verification Library -keep class com.android.vending.licensing.ILicensingService # Specifies to write out some more information during processing. # If the program terminates with an exception, this option will print out the entire stack trace, instead of just the exception message. -verbose #################################################################################################### ############################## IBM MobileFirst Platform configuration ############################ #################################################################################################### # Annotations are represented by attributes that have no direct effect on the execution of the code. -keepattributes *Annotation* -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keepattributes InnerClasses -keep class **.R -keep class **.R$* { ; } # These options let obfuscated applications or libraries produce stack traces that can still be deciphered later on -renamesourcefileattribute SourceFile -keepattributes SourceFile,LineNumberTable # Enable proguard with Cordova -keep class org.apache.cordova.** { *; } -keep public class * extends org.apache.cordova.CordovaPlugin -keep class com.worklight.androidgap.push.** { *; } -keep class com.worklight.wlclient.push.** { *; } -keep class com.worklight.common.security.AppAuthenticityToken { *; } # Enable proguard with Google libs -keep class com.google.** { *;} -dontwarn com.google.common.** -dontwarn com.google.ads.** # apache.http -keep class org.apache.http.** { *; } -dontwarn org.apache.http.** -optimizations !class/merging/vertical*,!class/merging/horizontal*,!code/simplification/arithmetic,!field/*,!code/allocation/variable -keep class net.sqlcipher.** { *; } -dontwarn net.sqlcipher.** -keep class org.codehaus.** { *; } -keepattributes *Annotation*,EnclosingMethod -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keepclassmembers class * implements javax.net.ssl.SSLSocketFactory { private javax.net.ssl.SSLSocketFactory delegate; } # Remove debug logs in release build -assumenosideeffects class android.util.Log { public static *** d(...); } # These classes contain references to external jars which are not included in the default MobileFirst project. -dontwarn com.worklight.common.internal.WLTrusteerInternal* -dontwarn com.worklight.jsonstore.** -dontwarn org.codehaus.jackson.map.ext.* -dontwarn com.worklight.androidgap.push.GCMIntentService -dontwarn com.worklight.androidgap.plugin.WLInitializationPlugin -dontwarn com.worklight.wlclient.push.GCMIntentService -dontwarn org.bouncycastle.** -dontwarn com.worklight.androidgap.jsonstore.security.SecurityManager -dontwarn com.worklight.wlclient.push.WLBroadcastReceiver -dontwarn com.worklight.wlclient.push.common.* -dontwarn com.worklight.wlclient.api.WLPush -dontwarn com.worklight.wlclient.api.SecurityUtils -dontwarn android.support.v4.** -dontwarn android.net.SSLCertificateSocketFactory -dontwarn android.net.http.* -dontwarn okio.** -dontwarn com.squareup.okhttp.** -dontwarn javax.annotation.** -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase -dontwarn org.codehaus.mojo.animal_sniffer.* -dontwarn okhttp3.internal.platform.ConscryptPlatform -keep class com.ionicframework.cordova.webview.** { *; } -keep class com.ionicframework.cordova.webview.* -keep public class com.google.android.gms.* { public *; } -dontwarn com.google.android.gms.** ######################################################################################################