Android异步Http客户端升级

时间:2015-12-24 16:44:10

标签: android http asynchronous

我遇到了Android异步Http客户端(http://loopj.com/android-async-http/)的问题。 直到今天我使用了1.4.6版本和我的代码(见下面的工作没有问题)。

RestClient.get(MyUrl, null, new JsonHttpResponseHandler() {
    @Override
    public void onStart() {
    Toast.makeText(getApplicationContext(), "START", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
        Toast.makeText(getApplicationContext(), "OK", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
        Toast.makeText(getApplicationContext(), "ERROR", Toast.LENGTH_SHORT).show();
    }
});

RestClient就是这样:

public class RestClient {
    private static final String BASE_URL = "http://www.example.com/action.php?";

    private static AsyncHttpClient client = new AsyncHttpClient();

    public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
    client.get(getAbsoluteUrl(url), params, responseHandler);
    }

    public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
        client.post(getAbsoluteUrl(url), params, responseHandler);
    }

    private static String getAbsoluteUrl(String relativeUrl) {
        return BASE_URL + relativeUrl;
    }
}

将Android异步Http客户端库从1.4.6升级到1.4.9(最后一个)后,我得到错误"方法不会覆盖或实现超类型的方法"在Android Studio上关于onSuccess和onFailure方法。

关于什么是什么想法是图书馆的变化?我已阅读更改日志,但我找不到解决方案。感谢。

1 个答案:

答案 0 :(得分:0)

这些方法的界面已经改变。你有: public void onSuccess(int statusCode,Header [] headers,JSONObject response)

public void onFailure(int statusCode,Header [] headers,String responseString,Throwable throwable)

更新的界面是: public void onSuccess(int statusCode,Header [] headers,byte [] response)

public void onFailure(int statusCode,Header [] headers,byte [] errorResponse,Throwable e)

看起来它已经从将String作为参数变为使用字节数组。可能是为了避免对字符串的编码做出假设。

相关问题