Android网络请求与数据解析,使用Gson和GsonFormat解析复杂Json数据

版权声明:未经博主允许不得转载

一:简介

【达叔有道】软件技术人员,时代作者,从 Android 到全栈之路,我相信你也可以!阅读他的文章,会上瘾!You and me, we are family !

二:前言

在开发中我们要面对很复杂的操作,那么今天的网络请求与数据解析也是对于学习Android开发者来说,需要解决的难题,我只是讲解一下知识内容,用于理解这方面的知识点。

三:HttpUrlConnection和JSON数据解析

网络请求有两种类型,一个是get,另一个是post。网络请求通常使用HttpUrlConnction,HttpClient,还有更多的框架使用,这些框架也是其他人自己开发出来便于使用的。

对于json解析,官方的原生解析和Gson解析,JSON是一种轻量级的数据交换格式,有很好的可读性和快速编写的特点。建议你可以下载一个Google插件,JSON Viewer可以便于看起来舒服点。

看看JSON数据api:

https://www.sojson.com/open/api/weather/json.shtml?city=%E4%B8%8A%E6%B5%B7

在你的Android Studio中也提供一个插件名为:GsonFormat,GsonFormat可以帮你格式化Json数据,并自动生成相应的属性类。这个插件是不是很好,那就下载吧,如果项目巨大,你的Json数据多到你也不想打代码了吧!

下载完Android Studio中的插件时(过程可以百度)重新启动一下就行。我们来验证是否安装成功,找个java文件按alt+S,弹出GsonFormat的窗口则代表安装成功。

在GsonFormat中,放入https://www.sojson.com/open/api/weather/json.shtml?city=%E4%B8%8A%E6%B5%B7(复制全部放入),点击Format即可。

有了GsonFormat的功能,我们就不用辛苦生成Json数据里的属性类。

四:使用json解析

JSON数据一般由服务器端提供接口,我们根据接口地址解析数据,然后把数据显示在APP上。

举例:接口地址

如果这样写我的天,也是挺累,对于使用Gson来说就很方便啦。待会我来讲使用方法。

对于Android来说重要的网络部分,如何解决从网络上下载数据,如何解决上传,等。我们开发app会不断向服务器发送请求,那么返回到APP的是json数据的字符串,我们需要对json数据进行解析才能显示到app客户端上。对于HTTP协议是这样的,http为超文本传送协议,是web的基础,http是建立在tcp上的一种。http在客户端发送请求都要服务器回送响应,请求结束后,会主动释放。这个过程连接到关闭为一次连接。

五:网络权限

在我们使用网络请求的时候,需要的是设置权限,这一点千万别忘记了。

六:使用Gson

Gson就是一个jar包,导入就行,源代码可以看看:https://github.com/google/gson

我们只要在build.gradle的dependencies下

放入代码:

我们来使用这个接口试试:https://www.sojson.com/open/api/weather/json.shtml?city=%E5%B9%BF%E5%B7%9E

使用Gson,解析

七:比较详细地说明

八:

要创建一个子线程

以上就是个人记录知识点

编辑 :达叔

定位:分享 Android&Java 知识点

这是一个有质量,有态度的公众号

喜欢本文的朋友们

欢迎长按下图关注订阅号

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180702B00N2J00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券