作为第一个接触的正式安卓项目,起到了入门的作用,同时也学到了一些很有用的知识。
项目介绍
- 这是一款为西安钟楼开元广场的曼迪美发公司开发的理发APP,为了提升他们的工作效率,他们主要是拿本子记,不方便。
- 该APP共有两个入口,一个是理发师入口,一个是助理入口。
- 理发师入口登录后,共有三个界面,第一个是预约订单界面,展示的是预约该理发师的订单,点击单项订单后会出现订单详情,包括预约人姓名,电话,预约项目,预约时间等。第二个是订单记录,就是已完成的订单记录。第三个界面就是个人信息界面,展示自己的职位和电话。
- 助理入口登录后,共有三个界面,第一个界面是添加订单界面。当助理接到电话或者现场添加订单时,首先使用手机号查询是否为会员,如果是会员,直接下订单,包括选择项目,选择理发师,选择理发时间等。如果不是会员也是如此,只是不能享受会员价。第二个界面是查询订单界面,主要显示该助理负责的订单,因为一个助理会帮多个理发师工作,所以助理的订单内容和理发师的订单不同。第三个界面也是个人信息界面,展示自己职位和电话。
工作内容
- 实现下拉刷新获取数据,当数据较多时,分页显示数据。
- 实现数据获取与交互。
- 理发店数据测试与开发。
具体内容
了解了下拉刷新基本原理,使用下拉刷新完成数据获取。当分页显示数据中,在发送的网络请求接口中加入page页数,通过请求获得的page页数判断是否需要进行分页显示。
每次下拉刷新时,判断当前页数是否小于服务器返回的总页数,如果小于则继续发送请求数据,获取数据并显示,如果已经等于,则提示没有更多数据了。实现数据获取与交互。
主要使用Volley库进行网络传输,使用Gson进行数据获取与解析。实现每一个需要进行网络请求的接口,请求数据并获取数据并进行解析。理发店数据测试与开发
现场模拟APP真实使用场景,分别为理发师身份和助理身份。
发现问题:当数据过多时,会出现确定按钮无法显示问题。应该是之前布局文件没有写好,修改后即可。
发现问题:当无网络连接时,用户并不知情,还一直请求数据。应该增加一个网络状态判断工具类,每次进行网络请求前都要进行有无网络判断。改进地方
当网速过慢时,点击按钮进行请求数据,数据没有及时返回,这时用户便多次点击导致请求过多与重复,容易出现bug。
应该在进行网络请求后添加一个等待状态栏,此时按钮不可再点击,当设置时间3秒或5秒后,或者已接收到数据后,该等待状态栏消失。
性能优化:使用include解决。