OkHttp使用介绍

来源:互联网 发布:魔兽数据库 npc 野兽 编辑:程序博客网 时间:2024/06/03 17:50

OkHttp okio jar包地址:http://square.github.io/okhttp/#download


package com.example.okhttptest;import android.app.Activity;import android.os.Bundle;import android.util.Log;import java.io.IOException;import okhttp3.Call;import okhttp3.Callback;import okhttp3.FormBody;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.RequestBody;import okhttp3.Response;public class MainActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }    private void httpGetExample() {        // 最基本的请求操作        OkHttpClient client = new OkHttpClient();        // 还可以设置method header        Request request = new Request.Builder().url("https://www.baidu.com/").build();        // 通过call封装成一个任务        // enqueue加入调度,异步执行        client.newCall(request).enqueue(new Callback() {            @Override            public void onFailure(Call call, IOException e) {                Log.e("MainActivity", e.toString());            }            @Override            public void onResponse(Call call, Response response) throws IOException {                Log.i("MainActivity", "network success");                // response.body().string() 返回字符串                // response.body().bytes() 返回二进制字节组                // response.body().byteStream() 返回inputStream 支持大文件下载                Log.i("Response", response.body().string());            }        });    }    private void httpPostWithContentExample() {        OkHttpClient client = new OkHttpClient();        RequestBody body = new FormBody.Builder()                .add("username", "wjy").build();        Request request = new Request.Builder()                .url("https://www.baidu.com/")                .post(body)                .build();        client.newCall(request).enqueue(new Callback() {            @Override            public void onFailure(Call call, IOException e) {                Log.e("MainActivity", e.toString());            }            @Override            public void onResponse(Call call, Response response) throws IOException {                Log.i("MainActivity", "network success");                Log.i("Response", response.body().string());            }        });    }}

apply plugin: 'com.android.application'android {    compileSdkVersion 19    buildToolsVersion "23.0.0"    defaultConfig {        applicationId "com.example.okhttptest"        minSdkVersion 19        targetSdkVersion 19        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])    compile files('libs/android-support-v4.jar')    compile files('libs/okhttp-3.5.0.jar')    compile files('libs/okio-1.11.0.jar')}


官方文档:https://github.com/square/okhttp/wiki/Recipes


博客参考:http://m.2cto.com/net/201605/505364.html

                    http://blog.csdn.net/lmj623565791/article/details/47911083


未完待续。。。

0 0
原创粉丝点击