Android程序最重要的模塊就是網絡部分,如何從網絡上下載數據,如何將處理過的數據上傳至網絡,每每是android程序的關鍵環節。java
AsyncHttpClient client = new AsyncHttpClient();client.get("http://example.com/file.png", new FileAsyncHttpResponseHandler(/* Context */ this) {@Overridepublic void onSuccess(int statusCode, Header[] headers, File response) {// Do something with the file `response`}loopj提供了各類關於返回參數的解析ResponseHandler,這也是我變得不喜歡loopj的一種緣由。});構造請求參數:RequestParams params = new RequestParams(); params.put("key", "value"); params.put("more", "data");
String response = HttpRequest.get("http://google.com").body();
HttpRequest.get("http://google.com").receive(System.out);
HttpRequest request = HttpRequest.get("https://google.com");//Accept all certificatesrequest.trustAllCerts();//Accept all hostnamesrequest.trustAllHosts();
OkHttpClient client = new OkHttpClient(); client.networkInterceptors().add(new StethoInterceptor()); RequestBody body = new FormEncodingBuilder() .add("data", data).add("token", getToken(data)) .add("system", "sample").build(); Request request = new Request.Builder() .url("http://sample.com/api/v1") .post(body).build(); Response response = client.newCall(request).execute(); final String reslut = response.body().string();
在上述代碼中有這樣一行代碼:
client.networkInterceptors().add(new StethoInterceptor());這是使用facebook的開源stetho來進行查看網絡訪問狀況的一個工具。![]()
okhttp能夠經過chrome的開發工具來查看手機的網絡訪問狀況,就和web開發人員同樣能夠在瀏覽器中查看手機訪問網絡的實時信息,查看提交和返回結果,大大的方便了開發,這個工具的使用將會專門寫一篇博客來進行講解。![]()