2016-04-13 19 views
3
my post request 

@POST("https://stackoverflow.com/users/login-facebook") 
@FormUrlEncoded 
void loginFaceboook(@Field("token") String accessToken, @Field("fbId") String facebookId, @Field("platform") int platform, 

        Callback<LoginSignupResponse> callback) 

私のGradleを使用した場合はによって引き起こさcom.squareup.okhttp.internal.http.HttpMethod.METHODS私は改造

compile 'com.squareup.okhttp:okhttp:2.0.0' 
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0' 
compile 'com.squareup.retrofit:retrofit:1.6.1' 

も、私のすべてのポストサービスが同じエラーを持っています

答えて

4

依存関係のバージョンは古く、互換性がありません。

最新の1.xについては、最新の1.9.0であり、最新のokhttp 2.x(現在は2.7.5)を使用したいと考えています。

retrofit 2.xとokhttp 3.xへの移行を検討してください。

+0

私のgradleコンパイルを変更する'com.squareup.retrofit:retrofit:1.9.0'コンパイル 'com.squareup.okhttp:okhttp:2.7.5' 'com.squareup.okhttp:okhttp-urlconnection:2.5.0'をコンパイルするとエラーが発生しました。再度java.lang.NoSuchMethodError:com.squareup.okhttp.internal.http.HttpEngine。 at com.square.okhttp.internal.huc.HttpURLConnectionImpl.newHttpEngine(HttpURLConnectionImpl.java:367) – hugerde

+0

urlconnectionライブラリのバージョンは、お使いのokhttpのバージョンと一致する必要があります。 – laalto

+0

ありがとう@laalto – hugerde

1

これを試してみてください、

はGradleの中でこれを置く:

compile 'com.squareup.retrofit:retrofit:1.6.1' 
compile 'com.squareup.okhttp:okhttp:2.0.0' 
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0-RC1' 
compile 'com.squareup.okio:okio:1.0.0' 

@FormUrlEncoded 
@POST("https://stackoverflow.com/users/login-facebook") 
void loginFaceboook(@Field("token") String accessToken, @Field("fbId") String facebookId, @Field("platform") int platform, 

        Callback<LoginSignupResponse> callback) 
+0

私は試しましたが、何も変わりませんでした。 – hugerde

+0

私は答えを編集しました。試してみてください。エラーが発生した場合は、ログを共有してください。 –

+0

私はokio botを追加しませんでした。java.lang.NoSuchFieldError:com.squareup.okhttp.internal.http.HttpMethod.METHODS com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.setRequestMethod (HttpURLConnectionImpl.java:550) retrofit.client.UrlConnectionClient.prepareRequest(UrlConnectionClient.java:50) に – hugerde

0

以下試してみてください代わりに

コンパイル 'com.squareup.retrofit:改造:1.9.0' また

、置く必要はありませんgraleのokhttpまたはokioのエントリ。

関連する問題