問題タブ [retrofit2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
291 参照

android - すべてのデータが同じ Retrofit から取得されているのに、ListView の代わりに RecyclerView を使用すると白い画面が表示されるのはなぜですか?

RecyclerView でGitHubApiからのデータを表示したいのですが、できません。このデータを ListView で表示できます。自分のList<>コレクション データで RecyclerView を使用できます。Retrofit で RecyclerView を使用したい場合、アプリケーションでエラーがスローされる代わりに白い画面が表示されます。この問題を解決できません。

これは私の RecyclerView アダプター クラスです。

0 投票する
1 に答える
2016 参照

java - レトロフィット - 並列 HTTP リクエスト

現在 Retrofit ライブラリを使用してネットワーク リクエストを行っている Android アプリケーションがあります。並列非同期リクエストがたくさんあります。すべてのリクエストが終了したら、どうすればよいですか?

0 投票する
3 に答える
21976 参照

http-headers - Retrofit 2.0 ヘッダー認証

これにより、Retrofit 2.0 で失敗が返されます。もともとは「Authorization」ヘッダーなしで持っていたもので、許可されていませんでした。これは理解できます。しかし、今は認証トークンで承認していますが、失敗します。Retrofit 2.0 の新機能、ありがとう --

0 投票する
2 に答える
1557 参照

android - 本番環境でベータ ライブラリを使用しても安全ですか?

レトロフィット 2.0.0-beta3 を使用したい

http://square.github.io/retrofit/

ライブラリの基本的な機能を備えていますが、レトロフィットのためか、それとも一般的にベータ段階のライブラリを基本的な機能で使用しても安全であるかはわかりません。マーキング)。

0 投票する
1 に答える
688 参照

android - Retrofit+GSON+SugarORM 使用時の長い ID の問題

このチュートリアルに従って、JSON を取得し、Retrofit と GSON を使用して POJO にシリアル化しています。すべてが正しく機能しています。インスタンスを SQLite データベースに保存するために、Sugar ORM を使用しました。私のPOJOにはフィールドがあります-整数ID。

Sugar ORM では、Integer id が Long である必要があります。私はオーケーと言ってロングにしました。アプリを実行すると、次のエラーが発生します。

01-18 06:03:44.436 4498-4498/uz.cp.retrofitsandbox E/AndroidRuntime: 致命的な例外: メイン プロセス: uz.cp.retrofitsandbox、PID: 4498 java.lang.RuntimeException: アクティビティ ComponentInfo{uz を開始できません。 cp.retrofitsandbox/uz.cp.retrofitsandbox.MainActivity}: java.lang.IllegalArgumentException: android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298) android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) で android.app.ActivityThread.access$800(ActivityThread.java:144) で android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) android.os.Handler.dispatchMessage(Handler.java:102) で android.os.Looper.loop(Looper.java:135) で android.app.ActivityThread.main(ActivityThread.java:5221) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit. java:899) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 原因: java.lang.IllegalArgumentException: メソッド GitApiInterface のクラス uz.cp.retrofitsandbox.GitResult のコンバーターを作成できません。getUsersNamedTom で retrofit.Utils.methodError(Utils.java:201) で retrofit.MethodHandler.createResponseConverter(MethodHandler.java:67) で retrofit.MethodHandler.create(MethodHandler.java:32) で retrofit.Retrofit.loadMethodHandler(Retrofit.java) :138) retrofit.Retrofit$1.invoke(Retrofit.java:127) で java.lang.reflect.Proxy.invoke(Proxy.java:397) android.app.Instrumentation. callActivityOnCreate(Instrumentation.java:1105) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) ...10 以上の原因: java.lang.IllegalArgumentException: クラス uz.cp.retrofitsandbox.Item は、com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:146) で id という名前の複数の JSON フィールドを com.google で宣言します.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:83) at com.google.gson.Gson.getAdapter(Gson.java:359) at com.google.gson.internal.bind.CollectionTypeAdapterFactory.create(CollectionTypeAdapterFactory.java:52) com.google.gson.Gson.getAdapter(Gson.java:359) com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getFieldAdapter(ReflectiveTypeAdapterFactory.java:122) で com.google .gson.internal.bind.ReflectiveTypeAdapterFactory.access$100(ReflectiveTypeAdapterFactory.java:46) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.(ReflectiveTypeAdapterFactory.java:92) at com.google.gson.internal.bind.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:142) の ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:91) com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java: 83) com.google.gson.Gson.getAdapter(Gson.java:359) で retrofit.GsonConverterFactory.get(GsonConverterFactory.java:50) で retrofit.Utils.resolveConverter(Utils.java:72) retrofit.MethodHandler.createResponseConverter(MethodHandler.java:65) で ... 19 もっと見る

このエラーは、次の行に誘導しています(27):

私の質問: なぜこのエラーが発生するのですか? これを解決するには?

build.gradle(アプリ)

onCreate(MainActivity.java):

GitApiInterface.java

GitResult.java

アイテム.java

0 投票する
1 に答える
1292 参照

android - レトロフィット 2 + rx-android でグローバル エラー コンバーターを登録するにはどうすればよいですか?

私のサーバーは、すべてがうまくいくとドメイン Java オブジェクトを返しますが、エラーが発生すると ErrorResponse オブジェクトを返します。(編集: サーバーは http コード 40x を返し、エラー情報を含む json 本体を返します) レトロフィット 2 + rx-android にグローバル エラー コンバーターを登録して、すべての呼び出しで同じことを回避するにはどうすればよいですか?

現在、私はすべての呼び出しで次のようにしています:

おそらく、これを自動的に処理し、在庫の onError(Throwable t) の代わりに onError(ErrorResponse err) で Observable を返すカスタム CallAdapterFactory を作成する必要がありますか?

これを達成する方法についてのアイデアはありますか?

それは良い考えですか?