I\'m using Parse.com features in my app, everything works great on debugging mode. As soon as I generate a signed apk in release mode, I have a killing wait sometimes up to
Apparently the problem is some ANR in the Parse.com library, precisely when it tries to read its cash to sync previous unsynced data or something like this.
this happens due to the optimization, since with
-dontoptimize
parameter in proguard settings the problem is solved, although this is not a good idea, I think, and there should be a way to stop proguard from optimizing just this library.Although all I could find was this parameters :
# keep parse classes
#-dontwarn com.parse.**
-keep class com.parse.** { *; }
-keep interface com.parse.** { *; }
#-dontwarn org.apache.**
-keep class org.apache.** { *; }
-keep interface org.apache.** { *; }
#-dontwarn com.squareup.**
-keep class com.squareup.** { *; }
-keep interface com.squareup.** { *; }
-keep class com.shygunsys.pocketcyber.techicalservices.parse.**
-keep class com.fasterxml.jackson.databind.ObjectMapper {
public <methods>;
protected <methods>;
}
-keep class com.fasterxml.jackson.databind.ObjectWriter {
public ** writeValueAsString(**);
}
over the internet and SO to prevent Proguard from optimizing parse.com library and known libraries which parse uses, but as I said before no luck without the -dontoptimize
Any way, would be glad if I hear back from Parse.com developers, and/or Proguard guys to see whose bug is this
for com.fasterxml.jackson add below -keep class com.fasterxml.jackson.databind. ObjectMapper { public ; protected ; } -keep class com.fasterxml.jackson.databind. ObjectWriter { public ** writeValueAsString(**); }
Try the following if you have Apache http-core
and http-mime
along with Parse
library:
-keep class org.apache.** { *; }
-keep class com.parse.** { *; }
-dontwarn com.parse.**
-dontwarn org.apache.**
-dontwarn com.squareup.**