广告
返回顶部
首页 > 资讯 > 精选 >Android中怎么通过 Http协议访问网络
  • 171
分享到

Android中怎么通过 Http协议访问网络

androidhttp 2023-05-30 23:05:56 171人浏览 安东尼
摘要

Android中怎么通过 Http协议访问网络,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。HTTPCONNECTION由于网络连接是耗时操作不能在UI线程操作,一般通过Han

Android中怎么通过 Http协议访问网络,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

HTTPCONNECTION

由于网络连接是耗时操作不能在UI线程操作,一般通过Handler获取子线程中获取的数据

Handler mhandler=new Handler(){    @Override    public void handleMessage(Message msg) {      super.handleMessage(msg);      //数据处理逻辑    }  };

如何在UI线程中调用Http方法类(很久以前琢磨了很久):

new JSONText(mhandler);

返回的类型都是String,这里直接写在一个类里以后方便用

public class jsonTest {  Handler handler;  public JsonTest(Handler handler) {    this.handler = handler;    thread.start();  }  Thread thread=new Thread(new Runnable() {    @Override    public void run() {      Message msg=new Message();      try{        InputStream in=null;        HttpURLConnection connection=null;        URL url=new URL("http://guolin.tech/api/china");        connection=(HttpURLConnection)url.openConnection();        connection.setRequestMethod("GET");//设置请求方式,可以不设置,默认是GET        connection.setConnectTimeout(5000);//设置请求超时时间        in=connection.getInputStream();        msg.arg1=0x01;        msg.obj=in.toString();        handler.sendMessage(msg);      }catch (Exception e){        e.printStackTrace();        msg.arg1=0x02;        handler.sendMessage(msg);      }finally {        connection.disconnect();      }    }  });}

代码不复杂就不赘述了,接下来说其他几点:

thread:

经常听到有问sleep()和wait()有什么区别。sleep()方法来自thread类中,而wait()来自object类中;其次,sleep()方法调用的时候不出让系统资源,wait()让出系统资源其他线程可以占用CPU;最后,sleep(milliseconds)需要指定一个睡眠时间,时间一到会自动唤醒。

http(超文本传输协议) ,https(超文本传输协议安全版)

关于tcp/IP 和UPD:

TCP/IP比UDP稳定,但是慢,因为它有三次握手机制

关于三次握手:

网上有很多解释,自己叙述就是主机先问服务器,我可以发数据了吗,服务器回答,可以了,主机在说,那我发了。具体的内容以后在详细理解,先上图

Android中怎么通过 Http协议访问网络

OKHTTP

书上的描述是:出色的网络通信库可以用来代替Httpconnection。你说出色我就用咯。

添加依赖:

dependencies {compile 'com.squareup.okhttp3:okhttp:3.4.1'}

使用

OkHttpClient client =new OkHttpClient();//创建实例Request request =new Request.Builder().build();

通过url()访问网络:

Request request =new Request.Builder().url("www.baidu.com").build();

之后调用newCall()方法创建call对象,并调用excute()方法发送请求并获取服务器数据:

Response response=client.newCall(request).excute();String str=response..body().toString();//得到值

看完上述内容,你们掌握Android中怎么通过 Http协议访问网络的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: Android中怎么通过 Http协议访问网络

本文链接: https://www.lsjlt.com/news/222220.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android中怎么通过 Http协议访问网络
    Android中怎么通过 Http协议访问网络,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。HTTPCONNECTION由于网络连接是耗时操作不能在UI线程操作,一般通过Han...
    99+
    2023-05-30
    android http
  • Android 通过HttpURLConnection访问Http协议网络
    本文目录第一步:添加网络访问权限第二步:使用HttpURLConnection访问网络代码示例 Android原生目前支持两种方式访问http协...
    99+
    2022-06-06
    http协议 Android
  • Golang中基于HTTP协议的网络服务怎么访问
    本文小编为大家详细介绍“Golang中基于HTTP协议的网络服务怎么访问”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang中基于HTTP协议的网络服务怎么访问”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-06
  • Java中如何使用HTTP协议进行网络通信?
    Java作为一种广泛使用的编程语言,为我们提供了很多便利的网络编程工具。其中,HTTP协议是网络通信中最常见的协议之一。在这篇文章中,我们将会介绍Java中如何使用HTTP协议进行网络通信,以及一些实用的技巧。 首先,我们需要知道Java中...
    99+
    2023-06-14
    http numpy 索引
  • 怎么解析C#网络编程中的HTTP协议
    这篇文章将为大家详细讲解有关怎么解析C#网络编程中的HTTP协议,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。我们在用Asp.net技术开发Web应用程序后,当用户在浏览器输入一个网址时就是...
    99+
    2023-06-17
  • 怎么通过ssl访问网站
    通过ssl访问网站的方法:在需要通过ssl访问的页面中加入以下代码即可,代码如下:asp代码:If Request.ServerVariables("HTTPS")="off"Then response.redirect "https://...
    99+
    2022-10-23
  • Centos7中怎么安装NTP网络时间协议
    本文小编为大家详细介绍“Centos7中怎么安装NTP网络时间协议”,内容详细,步骤清晰,细节处理妥当,希望这篇“Centos7中怎么安装NTP网络时间协议”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。服务端:1...
    99+
    2023-06-27
  • 怎么通过外网访问mysql数据库
    通过外网访问mysql数据库的方法:默认安装并启动MySQL数据库,端口是3306。下载并解压holer软件包,地址:https://github.com/wisdom-projects/holer/tree/master/Binary/G...
    99+
    2022-10-09
  • 通过云服务器访问外网怎么设置
    首先,我们需要确保我们的云服务器有足够的内存和带宽来支持我们的访问请求。内存和带宽是保证云服务器稳定性的关键因素,如果内存和带宽不足,就会导致我们的服务器响应缓慢,甚至无法响应访问请求。因此,我们需要确保我们的云服务器有足够的内存和带宽来满...
    99+
    2023-10-27
    服务器
  • 使用Holer怎么通过外网访问本地SpringBoot
    本篇文章给大家分享的是有关使用Holer怎么通过外网访问本地SpringBoot,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1. 准备工作1.1 安装Java 1.7及以上版...
    99+
    2023-06-02
  • Java中Collection怎么通过迭代器访问
    这篇文章主要介绍Java中Collection怎么通过迭代器访问,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、说明Collection 接口有三个子接口,List、Set 和 Queue。List 会按照元素的插...
    99+
    2023-06-14
  • Linux中怎么通过命令行访问Dropbox
    这篇文章主要讲解了“Linux中怎么通过命令行访问Dropbox”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中怎么通过命令行访问Dropbox”吧!在当今这个多设备的环境下,云存...
    99+
    2023-06-16
  • 通过holer怎么从外网访问本地数据库
    通过holer怎么从外网访问本地数据库,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 准备工作1.1 安装并启动数据库默认安装的数据库端口...
    99+
    2022-10-18
  • php中怎么通过获取referer防非法访问
    php中怎么通过获取referer防非法访问,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。面是我下载页面down.php 的php代码 现在我发现,用迅雷,谷歌浏览器...
    99+
    2023-06-20
  • 阿里云服务器通过ip访问外网怎么设置
    VPN是Virtual Private Network的缩写,是一种虚拟私人网络服务,可以帮助用户在网络中隐藏自己的真实IP地址,并在不同的设备之间建立安全的连接。在阿里云服务器上使用VPN可以帮助用户实现在阿里云服务器上访问外网,并保护用...
    99+
    2023-10-28
    阿里 服务器 ip
  • CentOS 7中怎么通过nmcli命令管理网络
    CentOS 7中怎么通过nmcli命令管理网络,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  1、nmcli 用法  # nmcli [ OPTIONS ] OBJEC...
    99+
    2023-06-10
  • win7中ipv6无网络访问权限怎么解决
    这篇文章主要介绍“win7中ipv6无网络访问权限怎么解决”,在日常操作中,相信很多人在win7中ipv6无网络访问权限怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win7中ipv6无网络访问权限怎...
    99+
    2023-07-01
  • 怎么解决XP中启用Guest无法访问网络的问题
    本篇内容主要讲解“怎么解决XP中启用Guest无法访问网络的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决XP中启用Guest无法访问网络的问题”吧!好多Windows XP系统启用...
    99+
    2023-06-14
  • Linux中怎么设置用户通过SFTP访问目录的权限
    今天就跟大家聊聊有关Linux中怎么设置用户通过SFTP访问目录的权限,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。查看openssh软件版本,想sftp服务用户只能访问特定的文件目...
    99+
    2023-06-12
  • Ubuntu中怎么通过修改配置文件实现网络配置
    ...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作