安卓开发项目之StudyApp

一、项目背景

  1. 用户的注册和登录,以及用户信息的修改。
  2. 答题系统的实现,用户可以做题,并查看正确答案。
  3. 学习平台的搭建,用户可以观看学习视频。
  4. 积分商城的实现,用户可以通过观看视频和答题获得积分,从而可以兑换商品。
    以上所有功能都实现服务器和前端联动,数据通过mysql数据库进行存储。除此之前,还进行了细节的优化。
    以下的图文仅作为自主研发的小项目的学习记录,重在思路。

二、StudyApp实现结果

1、MainActivity的四个页面
实现思路:MainActivity的四个xml界面通过适配器与viewPager绑定;底部菜单栏用了谷歌开源的BottomNavigationBar,从github中引入依赖。
2、注册登陆(包括个人信息的修改)

  1. 答题页面
    进入AnswerActivity后,所有的数据都将会被加载到三种类型的Fragment中,分别是ChoiceFragment、JudgmentFragment以及MultipleChoiceFragment。三种Fragment都将会通过AnswerPageAdapter被添加到该答题活动的ViewPager中。
  1. 学习视频播放页面
  1. 积分商城页面
  1. 冷加载页面
    冷加载页面用于处理请求页面需要加载大量网络视频或者图片,防止用户在等待过程中出现空白页,提供给用户更优的体验。我在初始登 录MainActivity和退出登录的时候用到该技术。我将该页面设置为StudyApp的logo。

三、使用的技术

  1. ListView、RecyclerView、CardView、WebView的使用。
  2. 自定义RecyclerViewAdapter、ListViewAdapter、AnswerPageAdapter的使用。
  3. 幻灯片放映,Banner类的使用。
  4. 计时器CountDownTimer类的使用。
  5. XUI框架的使用。
  6. 选择器Selector的使用。
  7. Nginx代理服务器的使用(如果请求网络视频或图片可以不用本地的反向代理服务器)。
  8. okHttp的使用。
  9. Bitmap加载网络图片、Glide加载视频和图片的使用。
  10. 线程锁,以及同步和异步请求的使用。
  11. 阿里巴巴fastJson技术的使用。
  12. 原生BottomNavigationBar的使用。
  13. 服务器使用Tomcat搭建的servlet实现。

四、有关配置

前端: Android Studio
后端: IntelliJ IDEA 2018.3.5
数据库: sqlyog、mysql
服务器:用户与数据库的交互采用servlet搭建的本机服务器(对应的功能如登录,需要一个Service和Servlet类即可),本地视频用nginx搭建服务器(视频需要下载放到Nginx文件目录下的html文件夹即可)。
ps:服务器和手机一定要在同一个局域网中哦!

五、开发项目过程中参考的链接

  1. UI设计来源:阿里巴巴矢量图库
  2. ViewPager加载Fragment,切换时onCreateView多次调用问题:防止多个fragment对象懒加载,切换时被销毁,获取不了该fragment中xml控件的值
  3. XUI框架,超好用
  4. 为TextView中的drawable图片添加监听事件
  5. 自定义BottomNavigationBar
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TerryBlog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值