私のAndroid
アプリケーションは、google-play-services_lib
ライブラリと別のライブラリ プロジェクトを使用しています。このライブラリ プロジェクトでは、いくつかのサード パーティ ライブラリ ( SpringAndroid
) を使用して Web サービスをjson
形式で使用します。
問題は、アプリケーションをエクスポートしようとするproguard
と、エラーがスローされ、プロセスが停止することです。私のproguard
構成は以下の通りです。
-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.** { *; }
何らかの理由-keep public class
で認識されず、今でもproguard
エラーを下回っています。
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
You should check if you need to specify additional program jars.
there were 51 unresolved references to classes or interfaces.
You may need to specify additional library jars (using '-libraryjars').
java.io.IOException: Please correct the above warnings first.
at proguard.Initializer.execute(Initializer.java:321)
at proguard.ProGuard.initialize(ProGuard.java:211)
at proguard.ProGuard.execute(ProGuard.java:86)
at proguard.ProGuard.main(ProGuard.java:492)
何が欠けているのかわからない。これを構成dontwarn
すると、proguard
いくつかの重要なクラスが削除されます。