使用okhttp 解析json数据

 okhttp还是挺好使用的,而且6.0版本里面已经不提倡使用了HttpClient,下面我们来说说okhttp的使用

1.我们在Android studio中添加对okhttp的依赖(本文是在建立在Android studio的使用情况)

dependencies {
    compile 'com.zhy:okhttputils:2.3.9'}

2.我们可以封装一个关于okhttp的工具类,下面是一个简单的登录功能的实现
public class HttpUtils {
    public static String url = "http://mimi.xh-soft.com/MimiVideo/";  //不可少,是你的请求地址
    public static MiMiLoginListener miLoginListener;                    //登录

    public abstract interface MiMiLoginListener{
        public abstract void onLoginResult(int ret,Object msg);
    }

    public void onLoginResult(int ret,Object msg){
        if(miLoginListener != null ){
            miLoginListener.onLoginResult(ret,msg);
        }
        miLoginListener = null;
    }
    public static void postLogin(String phone_num,String passWord,final MiMiLoginListener listener){
        miLoginListener = listener;
        OkHttpUtils
                .post()
                .url(url+"login")
                .addParams("username", phone_num)
                .addParams("password",passWord)
                .build()
                .execute(new StringCallback() {
                    @Override
                    public void onError(Call call, Exception e) {
                        ToastUtil.show("连接错误,请查看网络连接");
                    }

                    @Override
                    public void onResponse(String _response) {
                        listener.onLoginResult(1,_response);
                    }
                });
    }
}


3.接着就是接收json数据了
 private void login() {
        account = edit_user.getText().toString().toLowerCase().trim();//用户名
        token = edit_pwd.getText().toString().trim();                 //密码
        HttpUtil.postLogin(account, token, new HttpUtil.MiMiLoginListener() {
            @Override
            public void onLoginResult(int ret, Object msg) {
                Gson gson = new Gson();
                String jsonString = msg.toString();
                userBasicInfo = gson.fromJson(jsonString, Login.class);
                _loginresult = userBasicInfo.getResult();
                saveLoginType(String.valueOf(userBasicInfo.getUserType()));
                if (_loginresult.equals("true")) {
                    doLogin();
                } else {
                    showToast("用户名或密码错误");
                }
            }
        });
    }
3.1 下载GsonFormat插件 快速生成JavaBean
 File->Settings..->Plugins-->Browse repositores..搜索GsonFormat
然后安装插件,重启android studio

3.2 GsonFormat的使用 Code ->Generate -> GsonFormat /右击 ->Generate ->GsonFormat


复制你要解析的json数据,点击ok






这样就基本完成了Android客户端和服务端的对接了。




  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值