問題タブ [retrofit]

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 に答える
775 参照

retrofit - 応答は同じだがマッピングが異なる場合にjsonを解析する方法

Retrofit を使用してリクエストを送信し、レスポンスを使用できるようにしようとしています。

サービスはこのようなjsonを返します

構造 (コード、メッセージ、およびデータ) は同じですが、データ内に何が入るかは異なります。この例では、User クラスにマップする必要があります。他の呼び出しでは、投稿のリストなどを返します。エラーが発生した場合、データ コンポーネントはなく、代わりにエラー プロパティがあります。

私は、Response タイプの特定のサブクラスを持ち、それを使用するように Retrofit にヒントを与えることができると思いました。

しかし、戻り値にデータ要素がない場合、アクションを実行するとプログラムが単に壊れます。

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

android - 特定のリクエストが実行されているかどうかを判断する方法は?

ネットワーク層の改良を検討しています。特定の非同期リクエストが特定の時点で実行されているかどうかを確認する方法はありますか?

たとえば、さまざまなタイミングでユーザー インターフェイスを更新できるように、リクエストが実行されているかどうかを知りたいとします。状態を追跡するために変数を保持することでこれを自分で行うことができますが、これのためにライブラリに既に何かがあるかどうか疑問に思っています。

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

java - Retrofit で URL の末尾に引数を追加する

そこで、次のような REST リクエストを作成しようとしています。https://api.digitalocean.com/droplets/?client_id=[client_id]&api_key=[api_key]

https://api.digitalocean.comエンドポイントはどこ@GET("/droplets/")にあり、注釈になります。エンド ビットが自動的に追加されることを望みます。なぜなら、それは私が作成するすべての API リクエストで同一であり、各リクエストに追加するのは面倒だからです。それを行う方法はありますか?

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

java - リクエスト タイプ (GET、POST など) で注釈が付けられていないメソッド getResources とはどういう意味ですか?

呼び出しコードで:

このクラスは Callback を実装しているため、成功/失敗が定義されます。

スタックトレース:

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

java - onResume でアクティビティに添付されていないフラグメント

基本的に正常に動作するフラグメントがあります。onResume メソッドでは、ユーザーがアクティビティ/フラグメントに到達するたびに、API 呼び出しを実行して新しいデータを取得します。

ほとんどの場合、これで問題なく動作します。ただし、更新 ui メソッドが完了する前に、ユーザーが親アクティビティに戻ると問題が発生します。更新 UI は、いくつかのテキスト ビューを設定するだけです。

たとえば、ユーザーがアクティビティとフラグメントに移動すると、上記の onResume が呼び出されます。ユーザーはすぐに親アクティビティに戻ります。非同期呼び出しと更新 UI はまだ完了していません。次のようになります。

致命的な例外: メイン プロセス: com.project.foobar、PID: 4405 java.lang.IllegalStateException: フラグメント MyDetailFragment{41ebb478} がアクティビティに接続されていません

これは、成功コールバックの後に update ui メソッドでスローされます。Square のレトロフィットを使用して API 呼び出しを管理しています。繰り返しますが、これは UI の更新が完了していないときに発生します。終了するのを待って戻ると、すべて問題ありません。

何が間違っているのでしょうか?

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

android - レトロフィット Android 2.1 API レベル 7 サポート

Retrofit は Android 2.1 をサポートしていますか? Application クラスでキープアライブを無効にしようとしましたが、それでも ConnectionPool の ClassNotFound が表示されます。私はOK AVD api 7を実行しています