当前课程知识点:Android应用开发基础 > 第九章 网络技术 > 9.4 Volley > 9.4 实践案例-volley框架
本节我们介绍volley网络框架
通过天气预报实例学习如何利用volley发送网络请求
并接收解析数据
通过天气预报实例
我们学习如何利用volley发送网络请求
首先创建一个应用程序 右击项目名
依次选择 “New” |“Module”设置应用程序的名字
在视图设置中
选择“Empty Activity”空白视图
视图的名字和布局的名字选择默认
进入项目的bulid.gradle文件添加
com.google.code.gson:2.8.5
依赖库和“com.mcxiaoke.volley:library:1.0.19"
并点击有上角的Sync Now按钮同步配置
进入res\layout\activity_main布局文件
修改布局类型为LineLayout线性布局
排列方向为垂直
修改TextView组件
设置宽度为充满
高度为适配
文本为“今日天气”
文本大小为“20dp"
设置文本居中
ID为”textview"
复制TextView组件
设置ID为“textview_today"
文本为”20℃“
复制TextView组件
文本为”本周天气“
设置ID为“textview1"
复制TextView组件
设置ID为“textview_week"
文本为”20~30℃“
新建Button组件
设置宽度为充满
高度为适配
ID为btn_fresh
文本为”刷新"
新建Weather类
打开postman
复制JSON返回的结果
点击右键选择Generate GsonFormat
将复制的JSON数据
粘贴进来
点击"OK"
将JSON数据转换成类对象
选中activity_main布局文件
点击右键选择GenerateLayoutCreator为组件变量命名
采用方式
自动生成组件初始化的代码
新建网络监听对象mVolleyResponseListener
新建静态变量requestQueue
在onCreate()中创建initData()方法
在initData()方法中初始化
网络监听器对象mVolleyResponseListener
实现onResponse接口
新建parseJsonWithGson()方法
用于将网络请求成功后返回的JSON数据解析
在parseJsonWithGson()方法中
新建私有字符串变量strWeek并赋值为空
新建Gson对象
Weather对象
通过Gson的fromJson()方法
将Json数据转换为Weather对象
为mTextViewToday赋值解析的json数据
使用for循环解析Json数组
通过Weather的
mWeather.getROWSDETAIL().get().getWData()
解析日期数据
通过Weather的
getROWSDETAIL().get().getTemperature()解析气温数据
在TextView显示一周的气温数据
新建getRequestQueue()方法
如果队列为空
则调用Volley.newRequestQueue()新建队列
如果全局队列不为空
直接返回Volley全局队列
在Button响应函数onClick中
设置点击响应事件sendHttpRequest()
在sendHttpRequest() 方法中为字符串变量strUrl
赋值为“http://139.199.220.137:8080/api/v2/get_weather”
创建hashmap集合用于存储数据
调用HashMap的put()方法设置Post访问请求
参数“UserName”
“user1”
根据网络请求的ip地址和body内容
创建Request请求对象
并设置回调接口为Volley监听器对象
通过add()方法将请求加入到Volley全局队列
进入AndroidManifest.xml文件声明访问网络的权限
代码编写完成后运行程序
显示一周的天气预报
点击“刷新”按钮刷新信息
从服务器获取新的数据
这就是volley网络框架的全部内容
请大家按照讲课的内容完成villey网络框架实例
在Android的手机或者模拟器中运行
通过实例理解volley网络框架的使用流程和特点
-Android Studio4.1.2安装常用问题汇总2021.3.15
-1.1 Android概述
--1.1 Android Studio安装与配置-实践案例
-1.1 Android概述--作业
-1.2 Android程序
-1.2 Android程序--作业
-1.3 Android程序调试
-1.3 Android程序调试--作业
-2.1 Activity概述
-2.1 Activity概述--作业
-2.2 Activity应用
-第2章 Android视图--2.2 Activity应用
-3.1 Activity布局
-3.1 Activity布局--作业
-3.2 Android基础组件
-3.2 Android基础组件--作业
-3.3 Android中级组件
-3.3 Android中级组件--作业
-3.4 Android适配器
-3.4 Android适配器--作业
-4.1 Fragment碎片组件
-4.1 Fragment碎片组件--作业
-4.2 ViewPager翻页类组件
-4.2 ViewPager翻页类组件--作业
-讨论:fragment与activity的生命周期有哪些不同?
-5.1 Android广播概述
-5.1 Android广播概述--作业
-5.2 Android广播工作原理
-5.2 Android广播工作原理--作业
-5.3 自定义广播
-第5章 广播--5.3 自定义广播
-5.4 有序广播
--5.4有序广播
-第5章 广播--5.4 有序广播
-6.1 系统服务概述
-6.1 系统服务概述--作业
-6.2 访问系统服务
-6.2 访问系统服务--作业
-6.3 自定义服务
-第6章 Android服务--6.3 自定义服务
-6.4 多线程
--6.4 多线程
-第6章 Android服务--6.4 多线程
-7.1 Android运行权限
-7.1 Android运行权限--作业
-7.2 URL URI概述
-第7章 内容提供者ContentProvider--7.2 URL URI概述
-7.3 ContentProvider概述
-第7章 内容提供者ContentProvider--7.3 ContentProvider概述
-7.4 访问通讯录
-第7章 内容提供者ContentProvider--7.4 访问通讯录
-7.5 课后作业案例
-8.1 相机服务
--8.1 相机服务
-8.1 相机服务--作业
-8.2 音视频服务
-8.2 音视频服务--作业
-9.1 网络服务概述
-9.1 网络服务概述--作业
-9.2 网络框架
--9.2 网络框架
-9.2 网络框架--作业
-9.3 Json
--9.3 Json
-第9章 网络技术--9.3 Json
-9.4 Volley
-第9章 网络技术--9.4 Volley
-10.1 文件存储
--10.1.3 实践案例-SharedPreference文件读写
-10.1 文件存储--作业
-10.2 数据库存储
-10.2 数据库存储--作业
-第1章 实训简介以及开发环境配置
-第2章 在线音乐播放器整体设计以及服务端开发
-第3章 在线音乐播放器-客户端开发
-第4章 在线音乐播放器-完整版
-第5章 QQ聊天项目
-第6章 在线点餐系统