美文网首页
2018-04-26—网络请求(例:星座运势app实现)

2018-04-26—网络请求(例:星座运势app实现)

作者: 季白zy | 来源:发表于2018-04-26 18:56 被阅读0次

上一节给大家讲了一个比较无聊的东西,这节就会派上用场了,哈哈,今天给大家讲解的是网络请求,我们做的APP很少是单机的App吧,一般情况下多多少少都会用到一些网络请求,而他具体是怎么实现的呢?今天我们来一起看一下Android中网络请求相关知识:


在这之前,我们首先需要了解一下我们android端和后端的交互流程:

前后端最简单交互流程

我们android发送HTTP请求,然后传入后端进行相对应操作后,返回给我们结果,这个结果就是以Json形式传回。这里的两个关键点就是发送http请求和解析Json,上节课我们讲了Json的解析,这节课我们就来看一看我们是怎么发送网络请求的。


一、HttpURLConnection类

我们的网络请求目前最基本的是使用HttpURLConnection类进行操作,下面通过代码来看一下他的流程。

1.创建URL类,关于这类我们不做太多解释,现在只理解用它来接收我们的网址,这里我们聚合数据中的数据接口了(关于聚合数据我们下一次再详细介绍)

URL中的网址

2.获取HttpURLConnection类

我们通过url.openConnection方法来获取connection对象。

3.设置connection:

connection相关设置

4.这几个是必须要设置的,下面连接connection

5.接收响应码:

响应码接收

6.判断响应码是否正常(200为正确结果一般),如果为200,则我们通过流操作获取结果:

7.最后断开连接

断开连接

对了,不要忘记两个个关键的地方:①权限。我们使用网络请求,就要申请网络使用权限,在mainfest.xml中申请

②在子线程中进行网络请求(因为网路请求属于耗时操作,这个之前说过)。

权限申请

好了,现在我们跑一下程序,看看效果如何:

04-26 10:10:03.135 5816-5859/zy.pers.horoscope E/我们获取到的结果:: {"date":20180426,"name":"水瓶座","datetime":"2018年04月26日","all":"40%","color":"黄色","health":"70%","love":"40%","money":"60%","number":5,"QFriend":"天秤座","summary":"今天是一个容易急躁的一天,而且情绪上太,不要太自我,要多去体会别人的想法。今天是一个适合出行,学习的日子,但是在学习上不能急功近利,要慢慢地体验,去学习。今天适合做自己爱好的事情。取好好让自己开心一下。释放压抑和压力。","work":"40%","resultcode":"200","error_code":0}

这是我得到的结果,看样子是正确的,返回的就是我们上一次连接到的Json串。


这样子实在是太不美观了,我们来做一个正儿八经的APP吧,就用这个星座运势的接口来做。(主要是实现功能,所以美观咱们就不谈了啊哈哈!)

效果

相关文章

  • 2018-04-26—网络请求(例:星座运势app实现)

    上一节给大家讲了一个比较无聊的东西,这节就会派上用场了,哈哈,今天给大家讲解的是网络请求,我们做的APP很少是单机...

  • Android 快速实现网络监听

    okhttp抓包实现网络监听 抓取自身APP的网络请求,方便测试、后端、及自己调试查看APP的网络请求情况 git...

  • 2020年星座运势

    [cp]#十二星座运势##星座运势##十二星座##星座##处女座超话# 2020年一月星座运势 处女座A型血

  • http请求-自定义

    1.网络请求框架 实现 1.线程管理类 单例实现 2.请求的接口 3.请求的返回接口 4.请求的数据返回接口 5....

  • APP网络请求分析(react native角度)

    概要 本章记录APP网络请求参数作用 一、APP网络请求。 简单来讲(常用的口头区分),APP网络请求分为get ...

  • APP重构之路 网络请求框架

    APP重构之路 网络请求框架 APP重构之路 网络请求框架

  • 2020年星座运势

    #十二星座运势##星座运势##十二星座##金牛座# 2020年十二星座运势 金牛座B型血 一月份的运势 在事业上,...

  • 星座周运

    #十二星座运势##十二星座##星座运势##白羊座[超话]##金牛座[超话]##白羊座[超话]##星座运势##12星...

  • networkActivityIndicatorVisible

    经常看到APP在网络请求时,状态栏上会有一个转动的菊花,表示在请求网络,其实现如下: 在开始网络请求前: [UIA...

  • 2020年星座运势

    #十二星座运势##星座运势##十二星座##星座##金牛座# 2020年一月的星座运势 金牛座O型血 在事业上呢,发...

网友评论

      本文标题:2018-04-26—网络请求(例:星座运势app实现)

      本文链接:https://www.haomeiwen.com/subject/zgsmlftx.html