Android Proguard configuration for SpringAndroid libraries -
my android application uses google-play-services_lib library , library project. library project in turn uses few third party libraries (springandroid) consume web services in json format.
the trouble is, while try export application, proguard throws errors , process stops. proguard configuration below.
-verbose -dontskipnonpubliclibraryclassmembers -keepattributes *annotation*,enclosingmethod,signature -keep class * extends java.util.listresourcebundle { protected object[][] getcontents(); } -keep public class com.google.android.gms.common.internal.safeparcel.safeparcelable { public static final *** null; } -keepnames @com.google.android.gms.common.annotation.keepname class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.keepname *; } -keepnames class * implements android.os.parcelable { public static final ** creator; } -keep public class com.mypackage.** { public void set*(***); public *** get(); } -keep public class com.fasterxml.jackson.** { *; } -dontwarn com.google.code.rome.android.repackaged.** -dontwarn com.fasterxml.jackson.databind.** -dontwarn org.simpleframework.xml.** -dontwarn org.apache.commons.** -keep public class org.springframework.http.converter.json.mappingjackson2httpmessageconverter.** { *; } for reason -keep public class not recognized , still below proguard error now.
org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonfactory org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsongenerator org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsongenerator org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonfactory org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsongenerator org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsongenerator org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjackson2httpmessageconverter: can't find referenced class com.fasterxml.jackson.core.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonfactory org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsongenerator org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.type.typefactory org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.type.javatype org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsongenerator org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonfactory org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsongenerator org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.type.typefactory org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.map.objectmapper org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.type.javatype org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.type.javatype org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsongenerator org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.type.javatype org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.type.javatype org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding org.springframework.http.converter.json.mappingjacksonhttpmessageconverter: can't find referenced class org.codehaus.jackson.jsonencoding should check if need specify additional program jars. there 51 unresolved references classes or interfaces. may need specify additional library jars (using '-libraryjars'). java.io.ioexception: please correct above warnings first. @ proguard.initializer.execute(initializer.java:321) @ proguard.proguard.initialize(proguard.java:211) @ proguard.proguard.execute(proguard.java:86) @ proguard.proguard.main(proguard.java:492) not sure i'm missing. if configure dontwarn this, proguard strips essential classes.
try rid of warnings adding following lines proguard-project.txt file:
-dontwarn org.springframework.http.client.** -dontwarn org.springframework.http.converter.feed.** -dontwarn org.springframework.http.converter.json.** -dontwarn org.springframework.http.converter.xml.**
Comments
Post a Comment