android-async-http get 请求Json数据

01 添加Android-async-http

compile 'com.loopj.android:android-async-http:1.4.9'

02 网络请求class:ApiHttpClient

import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;

public class ApiHttpClient {
    private static volatile ApiHttpClient client = null;
    private AsyncHttpClient asyncHttpClient = null;

    private ApiHttpClient(){
        asyncHttpClient = new AsyncHttpClient();
    }

    public static ApiHttpClient getInstance(){
        if(client == null){
            synchronized (ApiHttpClient.class){
                if(client == null){
                    client = new ApiHttpClient();
                }
            }
        }
        return client;
    }

    public void get(String url, AsyncHttpResponseHandler handler){
        asyncHttpClient.get(url, handler);
    }
}

03 MainActivity

public class MainActivity extends AppCompatActivity {
    ApiHttpClient mClient = null;
    TextHttpResponseHandler mHandler = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initData();
    }

    private void initData() {
        mClient = ApiHttpClient.getInstance();
        mHandler = new TextHttpResponseHandler() {
            @Override
            public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
                Log.i("MainActivity", "Failure");
            }

            @Override
            public void onSuccess(int statusCode, Header[] headers, String responseString) {
                Log.i("MainActivity", responseString);
            }
        };

        String url = "http://192.168.1.5:8080/tweet/tweet_new_01.json";
        mClient.get(url, mHandler);
    }
}

04 permission

<uses-permission android:name="android.permission.INTERNET"/>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,143评论 25 709
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,696评论 0 17
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,617评论 2 45
  • 「做一件事最好的时间是十年前,其次是现在」 2016年注定是有意义的一年。 我终于克服了恐惧,学会了游泳。 没错,...
    王小跳写点啥阅读 246评论 1 0
  • 由于天气的缘故期待已久的春游终于在兴奋和质疑中来到了,幼儿园共13辆车,590人的队伍浩浩荡荡地出发了。沿路树木的...
    东风满树花阅读 633评论 2 5