2017-01-06 8 views
1

署名付きAPKでアプリケーションをビルドすると、「参照クラスが見つかりません」というエラーが発生します。私はこれらのうちのいくつかを私のpro guard-rules.pro(アプリケーション用)に警告しないでください。しかし、私はリリースバリアントをリリースすると、JSONでフィールドを認識できなくなります。 次は私、私は以前入れ文を警告するが、削除しません、次のとおりです。警告付きAndroidスタジオビルドリリースで参照されているクラスが見つかりません

#Warnings to be removed. Otherwise maven plugin stops, but not dangerous 
#-dontwarn android.support.** 
#-dontwarn com.sun.xml.internal.** 
#-dontwarn com.sun.istack.internal.** 
#-dontwarn org.codehaus.jackson.** 
#-dontwarn org.springframework.** 
#-dontwarn java.awt.** 
#-dontwarn javax.security.** 
#-dontwarn java.beans.** 
#-dontwarn javax.xml.** 
#-dontwarn java.util.** 
#-dontwarn org.w3c.dom.** 
#-dontwarn com.google.common.** 
#-dontwarn com.octo.android.robospice.persistence.** 
# 

私は次のことを得るそれらを削除したときは警告している:

警告:com.fasterxml.jackson.databind.extを。 DOMSerializer:参照されるクラスorg.w3c.dom.bootstrap.DOMImplementationRegistryを見つけることができません 警告:com.fasterxml.jackson.databind.ext.DOMSerializer:参照されるクラスorg.w3c.dom.bootstrap.DOMImplementationRegistryを見つけることができません 警告: com.fasterxml.jackson.databind.ext.DOMSerializer:参照されるクラスorg.w3c.dom.bootstrap.DOMImplementationRegistryが見つかりません 警告

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    // compile "com.google.android.gms:play-services-gcm:8.3.0" 
    // compile 'com.android.support:appcompat-v7:23.2.0' 

    compile 'com.google.firebase:firebase-core:9.0.0' 
    compile 'com.google.firebase:firebase-messaging:9.0.0' 
    compile 'com.android.support:support-v13:23.1.1' 
    compile 'com.android.support:appcompat-v7:23.1.1' 

    compile 'com.fasterxml.jackson.core:jackson-databind:2.6.3' 
    compile 'org.springframework.android:spring-android-rest-template:1.0.1.RELEASE' 
    compile 'jackson:jackson-asl:0.9.3' 
    compile 'com.android.support:design:23.+' 

:INGの:com.fasterxml.jackson.databind.ext.DOMSerializerは次のような私の依存関係ならば、私はわからない、参照クラスorg.w3c.dom.bootstrap.DOMImplementationRegistry

を見つけることができませんリリースビルドに入っています。現在、それらはappのbuild.gradleファイルにあります。私はそれらを別の場所に置くべきでしょうか?

おかげ -Sonam

答えて

1

私はそれを動作させることができました。私は "-dontwarn"ステートメントを返します。また、私のモデルgetter/setterがオブジェクト型にマーシャリングすることができなかったので、次のステートメントを入れなければなりませんでした。

-keep public class your.domain.package.* { 
    public *** get*(); 
    public void set*(***); 
} 

これは私のアプリケーションを動作させました。

+0

同じエラーがあります。私に例を教えてもらえますか? –

+0

あなたはそれをあなたのアプリレベルに置く必要がありますproguard-rules.pro – Sonam

+0

私は追加しましたが、それは私のためには機能しません –

0

あなたが署名したAPKのためにProGuardのを有効にした場合、パッケージ/クラス/ ..でProGuardのルールファイルを除外します。

+0

例を表示できますか? -keep com.fasterxml.jackson.databind.ext.DOMSerializer? – Sonam

関連する問題