1

私はこのようなコードを持っています:

public Dictionary<Object, Object> call(String method, Iterable args)
{
    AsyncHttpClient client = new AsyncHttpClient();
client.get(getUrl(method, args), new AsyncHttpResponseHandler() {
    @Override
    public void onSuccess(String response) 
            {
        Gson gson = new GsonBuilder().create();             
    }       
    });
}

(Dictionary<Object, Object>) gson.fromJson(response, Dictionary.class)自分のcall方法に戻れるようにしたいのですが、どうすればよいですか? http://loopj.com/android-async-http/を使用して、使いやすい非同期 HTTP リクエスト システムを作成します。

ありがとう !

4

1 に答える 1

0

終了時には gson オブジェクトはまだ作成されていcall()ないため、何も返されません。

特定のニーズに応じて、回避策があります。一般に、 を呼び出しgson.fromJson(response, Dictionary.class)onSuccess()結果を既知の場所に配置し、データの準備ができたことを示すメッセージをアプリに送り返します。

また、成功は保証されていないため、http リクエストが失敗した場合に対処する必要があります。

于 2013-04-01T19:45:08.527 に答える