青训营笔记
这是我参与「第四届青训营 」笔记创作活动的第19天
网络请求框架:常见有
1. HttpURLconnection
2. volley
3. OKHttp
4. Retrofit
Retrofit是目前安卓平台上最热门的网络请求封装框架,是对OKHttp的一个封装
使用:
1. 引入Retrofit库
2. 创建用于描述网络请求的接口
3. 使用Retrofit实例发起网络请求
接口的一般表现形式为域名:路径,如
其形式和网页中的网址相似,user中为客户端向服务端查询的内容,name为服务端向客户端返回的查询内容,是一个GET请求,返回的是一个message。call.enqueue是一个异步请求
注解类型:
1. 网络请求方法
@GET @POST @PUT @DELETE @PATH @HEAD @OPTIONS @HTTP
2. 标记类
@FormUrlEncoded @Multipart @Streaming
3. 网络请求参数
@Header @Headers @URL @Body @Path @Field @FieldMap @Part @PartMap @Query @QueryMap
注解介绍: 可以理解为一个标签,加在类、方法、参数、成员变量上,并且在合适的时机读取注解内容,进行处理
注解处理的生命周期:
1. SOURCE:只在源码中有效,编译时抛弃
2. CLASS:编译class文件时有效,一般会使用到注解处理器
3. RUNTIME:在运行期间,获取对应的注解,并做相关处理
数据存储的几种方法:
1. SharedPreference 记录APP配置信息
2. 文件存储 网络下载,TXT文件存储等
3. ContentProvider 音视频,图片的读写等
4. SQLite存储数据 保存FEED流数据,并进行增删改查
1. 数据库的三个主要组件:
1. 数据库类(Database),用于保存数据库并作为应用持久性数据底层连接的主要访问点。
2. 数据实体(Entity),用于表示应用的数据库中的表
3. 数据访问对象(DAO),提供您的应用可用于查询、更新、插入和删除数据库中的数据的方法。
问题及解决方案:
1.信息流的数据,要能无限刷新
使用网络请求,实时从服务端获取数据; 可以按需选择合适的网络框架,也可以自己做个二次封装
2.每次冷启,要能快速的展现信息流内容
使用数据库存储,将数据保存在本地, 冷启时直接从数据库读取,直接进行数据解析和展示