`
zhengaihua
  • 浏览: 21084 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

OkHttp案例

阅读更多
package bawei.okhttp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;

public class MainActivity extends AppCompatActivity {
    private TextView tv;

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

        initView();
        postObj();
        //postJson();
        //postKey();
        //getEnqueue();
        //getExecute();
    }

    private void postObj() {
            RequestParameter req =new RequestParameter();
            req.page = "1";
            req.rows = "20";

            OkHttpUtils.post("http://www.tngou.net/api/cook/list",
                    req, new Callback(){

                        @Override
                        public void onFailure(Call call, IOException e) {

                        }

                        @Override
                        public void onResponse(Call call, Response response) throws IOException {
                            final String result = response.body().string();
                            tv.post(new Runnable() {
                                @Override
                                public void run() {
                                    tv.setText(result);
                                }
                            });
                        }
                    });
    }

    private void postJson() {
        String json ="{\"page\":\"1\",\"rows\":\"20\"}";
        OkHttpUtils.post("http://www.tngou.net/api/cook/list",
                json, new Callback(){

                    @Override
                    public void onFailure(Call call, IOException e) {

                    }

                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        final String result = response.body().string();
                        tv.post(new Runnable() {
                            @Override
                            public void run() {
                                tv.setText(result);
                            }
                        });
                    }
                });
    }

    private void postKey() {
        Map<String,String> map =new HashMap<>();
        map.put("page","1");
        map.put("rows","20");

        OkHttpUtils.post("http://www.tngou.net/api/cook/list",
            map, new Callback(){

                    @Override
                    public void onFailure(Call call, IOException e) {

                    }

                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        final String result = response.body().string();
                        tv.post(new Runnable() {
                            @Override
                            public void run() {
                                tv.setText(result);
                            }
                        });
                    }
                });
    }

    private void getEnqueue() {
        OkHttpUtils.get("http://www.baidu.com",
                new Callback() {
                    @Override
                    public void onFailure(Call call, IOException e) {

                    }

                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        final String result = response.body().string();
                        tv.post(new Runnable() {
                            @Override
                            public void run() {
                                tv.setText(result);
                            }
                        });
                    }
                });
    }

    private void getExecute() {
        new Thread(){
            @Override
            public void run() {
                final String result = OkHttpUtils.get("http://www.baidu.com");
                tv.post(new Runnable() {
                    @Override
                    public void run() {
                        tv.setText(result);
                    }
                });
            }
        }.start();
    }

    private void initView() {
        tv = (TextView)findViewById(R.id.tv);
    }
}

 

分享到:
评论

相关推荐

    OkHttp使用案例

    通过上述案例,我们可以看到OkHttp在Android开发中的基本使用方法。这个框架提供了丰富的功能,如HTTPS支持、WebSocket、自动重试、连接池等,使得网络请求变得简单高效。结合实际项目需求,开发者可以灵活地定制...

    Android retrofit+rxjava+okhttp 学习案例

    在Android开发中,Retrofit、RxJava和OkHttp是三个非常重要的库,它们共同构建了高效、简洁的网络请求框架。下面将详细讲解这三个库及其结合使用的知识点。 **Retrofit** 是一个由Square公司开发的Android和Java...

    Okhttp3+MVP

    本项目结合这两者,旨在提供一个简洁且实用的实战案例,帮助开发者更好地理解和运用它们。 首先,我们来详细了解OkHttp3。OkHttp是Square公司推出的一款高效的HTTP客户端库,它的核心在于减少了网络请求的延迟,...

    RxJava+Retrofit2+Okhttp3经典封装demo

    RxJava、Retrofit2和Okhttp3是目前非常流行的三大开源库,它们各自承担着不同的职责,共同构建了一个高效、灵活的网络请求框架。这个"RxJava+Retrofit2+Okhttp3经典封装demo"将展示如何整合这三个库,实现优雅的异步...

    android okhttp实例

    这是一个用okhttp进行网络请求的例子,例子包括 - okhttp get请求 - okhttp post请求 - okhttp 提取响应头 - okhttp 解析json - okhttp 提交表单 - okhttp 提交文件 - okhttp 下载文件 - okhttp https请求...

    OkHttp封装

    这个示例可能会包含一个简单的使用案例,展示如何调用封装后的网络请求方法,并处理返回的数据。 总的来说,OkHttp封装是提高代码复用性和可维护性的重要步骤。通过合理地封装,开发者可以在不熟悉OkHttp底层细节的...

    okhttp二次回调封装Demo

    **正文** 在Android开发中,OkHttp是一款非常流行的网络请求库,因其高效、稳定和易用性而备受青睐。本文将深入探讨一个基于...对于初学者来说,理解并实践这样的封装案例,有助于提升对网络请求处理的理解和技能。

    android网络okhttp3的demo

    本教程将详细讲解如何在Android项目中使用OkHttp3进行网络请求,结合“老罗那个”(可能指的是罗永浩的某个教学示例)的实践案例,让你深入理解OkHttp3的工作原理和使用方法。 ### 1. 安装与配置 首先,你需要在...

    okhttp_server

    【okhttp_server】项目展示了如何结合OkHttp、JavaEE和Struts2框架来实现Android设备的文件上传功能,涉及到网络通信、服务器端的文件处理和业务逻辑控制等多个技术层面,为开发者提供了一个实践和学习的好案例。

    okhttp二次封装

    在本案例中,描述提到了"注解处理器方式实现retrofit",这表明是将OkHttp与Retrofit结合,利用注解处理器简化接口调用的过程。 Retrofit是由Square公司开发的一个Java和Kotlin的类型安全的HTTP客户端,它允许我们...

    OkHttpGo案例

    【OkHttpGo案例】是一个关于使用OkHttp在Go语言中实现网络请求的示例。OkHttp是一个高效的HTTP客户端库,最初由Square公司为Java开发,但后来被移植到其他编程语言,包括Go。这个案例主要展示了如何在Go环境中利用...

    【Android+OkHttp3+Jsoup】 模拟登录教务系统 抓取课表和成绩

    在这个案例中,登录成功后,我们需要用Jsoup解析返回的网页内容,找到课表和成绩的相关数据节点,并将其提取出来。 3. **模拟登录**:模拟登录是指通过程序模拟用户在浏览器上的登录操作。在这个项目中,首先需要在...

    煎蛋项目okhttp_volley

    总的来说,“煎蛋项目okhttp_volley”通过整合OkHttp和Volley,实现了高效、流畅的网络通信,并结合了常见的UI交互设计,为开发者提供了一个优秀的实践案例。学习并理解这个项目,不仅可以提升对Android网络编程的...

    安卓-背单词软件,MVP架构, rxjava + retrofit2 + okhttp3 做网络请求

    【安卓背单词软件详解——...对于想要深入学习安卓开发、rxjava、retrofit2和okhttp3的开发者来说,这是一个极好的实践案例。同时,也提醒我们在项目开发中,保持良好的代码注释习惯和持续的服务器维护是至关重要的。

    Android Studio 爬虫 之 简单实现使用 jsoup okhttp3 爬取购物商品信息的案例demo

    Android Studio 爬虫 之 简单实现使用 jsoup/okhttp3 爬取购物商品信息的案例demo 1、okhttp3 获得网页的 html 内容 2、jsoup 解析 html 的内容,获取需要的部分信息

    Android-用kotlinokhttp3写的一个小小的新闻客户端项目

    本项目是一个基于Android平台,采用Kotlin语言和OkHttp3库开发的简易新闻客户端。这个小型项目展示了如何在Android应用中有效地利用Kotlin的语法特性以及OkHttp3来实现网络请求,获取和展示新闻数据。接下来,我们将...

    Android经典案例集合

    案例可能包括使用HttpURLConnection,OkHttp,或者Retrofit进行网络请求,以及处理JSON或XML数据。 8. **权限管理**:Android 6.0引入了运行时权限,开发者需要在应用运行时请求用户授权。案例会解释如何适配新的...

    Okhttp3实现爬取验证码及获取Cookie的示例

    【Okhttp3实现爬取验证码及获取Cookie的示例】这篇文章主要讲解了如何在Android应用中使用Okhttp3库来实现验证码的爬取以及获取和使用Cookie的功能,这对于开发涉及登录验证的移动应用来说至关重要。以下是对相关...

    Android开发入门60个小案例+源代码.rar.rar

    案例可能讲解如何使用HttpURLConnection或OkHttp库进行网络请求。 15. **JSON解析**:许多网络数据以JSON格式传输,案例可能包含如何使用Gson或Jackson库解析JSON数据。 16. **Android动画**:Android支持多种动画...

    Android移动开发基础案例教程(第2版)_PPT.zip

    另外,网络编程也是现代应用不可或缺的部分,学习者需要理解HTTP协议,使用HttpURLConnection或OkHttp进行网络请求,以及处理JSON或XML数据。 Android权限管理系统也是需要关注的,随着Android版本更新,权限管理也...

Global site tag (gtag.js) - Google Analytics