私はAndroidプロジェクトをライブラリとして使用しています.jarとして追加された次のライブラリを使用しています
okhttp-2.2.0.jar
okhttp-urlconnection-2.2.0.jar
okio-1.2.0.jar
retrofit-1.9.0.jar
私のメインプロジェクトでは、次のライブラリを使用しています
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.okhttp3:okhttp:3.4.1'
compile 'com.google.code.gson:gson:2.7'
他にもいくつかのライブラリがありますが、調査の結果、これらが問題の原因であることがわかりました。
アプリは正常に動作しますが、レトロフィットを使用して Web サービスを使用しようとすると、次のエラーでクラッシュします
java.lang.NoClassDefFoundError: 以下の解決に失敗しました: Lokio/ForwardingTimeout
アプリレベルのgradleファイルに追加しました
multiDexEnabled true
また、追加してみました
configurations{
all*.exclude module: 'okhttp-2.2.0'
all*.exclude module: 'okio'
}
そして、次のようなレトロフィットgradle依存関係を追加してみました
compile ('com.squareup.retrofit2:retrofit:2.1.0') {
exclude group: 'okio'
}
compile ('com.squareup.retrofit2:converter-gson:2.1.0') {
exclude group: 'okio'
}
ライブラリプロジェクトを追加する前に、私のプロジェクトは正常に機能していました。どんな助けでも大歓迎です。