阅读更多 转自:https://github.com/loopj/android-async-http/issues/173

public void testAsyncHttpClient() throws Throwable {
  final CountDownLatch signal = new CountDownLatch(1);
  final AsyncHttpClient httpClient = new AsyncHttpClient();
  final StringBuilder strBuilder = new StringBuilder();

  runTestOnUiThread(new Runnable() { // THIS IS THE KEY TO SUCCESS
    @Override
    public void run() {
      httpClient
          .get(
              "https://api.twitter.com/1/users/show.json?screen_name=TwitterAPI&include_entities=true",
              new AsyncHttpResponseHandler() {
                @Override
                public void onSuccess(String response) {
                  // Do not do assertions here or it will stop the whole testing upon failure
                  strBuilder.append(response);
                }

                public void onFinish() {
                  signal.countDown();
                }
              });
    }
  });

  try {
    signal.await(30, TimeUnit.SECONDS); // wait for callback
  } catch (InterruptedException e) {
    e.printStackTrace();
  }

  JSONObject jsonRes = new JSONObject(strBuilder.toString());
  try {
    // Test your jsonResult here
    assertEquals(6253282, jsonRes.getInt("id"));
  } catch (Exception e) {

  }

  assertEquals(0, signal.getCount());
}

更多相关文章

  1. 阅读《Android(安卓)从入门到精通》(14)——时间选择器
  2. android 三种定位方式 设计思路
  3. android apk dex odex jar 等文件的 反编译工具
  4. Android(安卓)Message源码阅读
  5. 25个你应该阅读的Android网站
  6. android 音频系统java部分代码阅读
  7. 25个你应该阅读的Android网站
  8. 阅读《Android(安卓)从入门到精通》(7)——图片按钮
  9. 阅读《Android(安卓)从入门到精通》(2)——熟悉开发环境

随机推荐

  1. 仅需一步!直接在 Windows 下使用 Linux
  2. 2021年报表软件排名_报表工具推荐
  3. M1 芯片 Mac 有哪些优势?几款 Mac 之间有
  4. 您的客户管理决策是否低于10毫秒?
  5. Microsoft Ignite 2021:Azure Disk Storag
  6. Elasticsearch 之 API调用
  7. python基本语法三
  8. 免费不限速跨平台文件传输神器—文件疯巢
  9. 关于Cisco Smart Install存在远程命令执
  10. 循环单链表及常用操作(C语言描述)