Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android/Java中Loopj库的回调函数_Java_Asynchronous_Async Await_Get_Loopj - Fatal编程技术网

Android/Java中Loopj库的回调函数

Android/Java中Loopj库的回调函数,java,asynchronous,async-await,get,loopj,Java,Asynchronous,Async Await,Get,Loopj,我尝试在已经实现的get函数之外访问请求的变量。我试图弄清楚为什么首先调用情感[0],然后打印空白([]),然后调用响应变量。我已经在谷歌上搜索了一段时间,但似乎没有太多人来处理这个问题,所以我有点想我误解了什么。感谢所有能给我的帮助 final JSONArray[] emotions = {new JSONArray()}; String emotionurl = "/posts/1"; APIClient.get(emotionurl, null, new JsonHt

我尝试在已经实现的get函数之外访问请求的变量。我试图弄清楚为什么首先调用情感[0],然后打印空白([]),然后调用响应变量。我已经在谷歌上搜索了一段时间,但似乎没有太多人来处理这个问题,所以我有点想我误解了什么。感谢所有能给我的帮助

final JSONArray[] emotions = {new JSONArray()};
String emotionurl = "/posts/1";
APIClient.get(emotionurl, null, new JsonHttpResponseHandler() {
      @Override
      public void onSuccess(int statusCode, Header[] headers, JSONArray response) {
           System.out.println(response);
           emotions[0] = response;
      }
});

System.out.println(emotions[0]);
通过以下客户端类的实现:

public class APIClient {
    private static final String BASE_URL = "http://jsonplaceholder.typicode.com";

    private static AsyncHttpClient client = new AsyncHttpClient();

    public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
        System.out.println(getAbsoluteUrl(url));
        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 API_URL + relativeUrl;
    }
}