西虹市网

标题: 聊一聊:app开发流程与demo [打印本页]

作者: guozhiwei    时间: 2024-1-20 07:45
标题: 聊一聊:app开发流程与demo

  大二开始做SRT,是做一个时间记录的app,做的很简单这里简单的记录一下妙娴评测网http://shidaseal.cn是当下比较受关注的行业产品,我们网站内汇集很多最近最新的资讯,欢迎点击进入了解更多消息资讯!

  app主要集合了时间记录,图分析,查看记录,下步规划以及用户体验的一些功能,包括分享到第三方平台,手机验证码登录

  1.前期准备工作

  1.1 确认需求

  大学生普遍存在时间观念不强,不能合理的安排时间,对未来有明确的时间规划,项目采用

  随身携带的智能终端帮助大学生有效的记录时间分配,合理的规划时间安排。

  1.2 app操作流程及功能规划

  通过线框图规划app的操作执行界面,设计app的主要功能,分为注册登录,时间记录,

  查看记录,图表分析,下步规划等功能,设计UI界面,仿微信6.0的主界面来设计本项目的

  主界面,收集UI素材

  1.3 开发知识的储备

  以已有的java知识为储备,学习Android开发的基本步骤,方法,框架,学习云服务器

  交互方法,了解云服务器端开发文档,学习基本的UI设计模板

  1.4 数据库的设计

  根据项目需要通过E-R图来设计所需的表与表中属性,了解云端数据库的交互方法,数据

  库共有四个表:user(用户)表,plan(用户计划)表,records(用户总记录)表,dayrecords

  (用户每天记录)表

  User(username,password,mobilePhone,emailVerified,email)

  Plan(username,email,main,level,freelessonnum)

  Records(username,email,activity_time,sport_time,study_time,fun_time,

  activity_per,sport_per,study_per,fun_per,freelesson_time)

  Dayrecords(username,date,week,xiangmu,start_hour,end_hour)

  2.项目开发阶段

  2.1 项目结构设计与数据操作

  App分为三层:

  (1)视图层:用户的操作. 视图对象的主要目的之一是将应用模型对象中的数据显示出来,

  并允许用户编辑该数据

  (2)控制器层:控制器层是在视图层和若干个模型层的中间人,负责响应视图层并操作模

  型层

  (3)模型层:封装了应用的一系列数据, 并定义了操作, 处理这些数据的逻辑和计算规则。

  数据来源于用户输入与服务器反馈,格式为Json,操作在视图层完成,处理在模型层完成,

  最终存储到云端服务器。

  2.2 项目开发环境选择

  采用Android 6.0版本的SDK,使用Android Studio1.5.1为开发工具,云端服务器采用

  Bmob云服务器,对应SDK为bmob-sdk:3.5.0、bmob-sms:1.0.1

  2.3.项目开发

  根据前期规划与设计,完成对App的开发,并对每个模块相应功能进行单独测试,最终将

  各个模块组合,完成app的开发,项目结构流程图如下

  2.4 主要功能介绍

  2.4.1用户记录相关功能

  主要包括用户设置相应的时间记录计划,进行时间的记录,查看记录,查看过去记录的

  图分析,对用户过去的时间分配进行简单的建议与规划,查看计划完成情况与各项活动所

  占的百分比,修改计划

  2.4.2 用户体验相关功能

  主要包括用户的注册与登录,手机验证码登录,忘记密码时的找回,修改资料,分享到

  第三方平台

  3.项目测试阶段

  3.1 测试环境

  3.1.1 硬件环境

  硬件名称 数量 配置

  三星Galaxy S5 1 分辨率1920 x 1080 RAM 2GB 核心数 4

  Genymotion模拟器 1 同上

  3.1.2 软件环境

  Android OS 4.2.2

  3.2 测试中出现的问题

  存在问题 解决方法

  1.云端服务器查询数据不同步 Handler异步查询

  2.实际记录数据与服务器数据不一致 重复提交bean导致,采用sharedpreferences暂时存储

  3.主页面fragment崩溃重叠 采用底色填充

  4.其他编码漏洞 修改

  3.3 项目存在问题

  对android底层结构不熟悉,对activity与fragment生命周期认识不足,主页面崩溃问题

  重叠问题解决不彻底,app启动卡顿明显,暂时采用载入页面背景透明掩盖,主要由于项目成

  员对android了解不足,底层框架认识不清导致

  3.4 项目发布

  目前项目已在应用宝发布,版本更新依托蒲公英第三方代码托管平台

  项目中用到的几个服务器和第三方接口以及Github上的几个开源UI

  Bmob云服务器:http://www.bmob.cn/

  第三方分享平台:http://www.mob.com/

  github上的开源UI:

  Hellocharts图表库:https://github.com/lecho/hellocharts-android

  Context-Menu.Android:https://github.com/Yalantis/Context-Menu.Android

  circular-progress-button:https://github.com/dmytrodanylyk/circular-progress-button

  android-floating-action-button:https://github.com/futuresimple/android-floating-action-button

  项目是简单的一个练手app做的有很多不足之处,但是对初学者可能有很多帮助,尤其是用Bmob平台开发app的开发者,项目地址

  https://github.com/yaoxunji/app
作者: 天涯飞客    时间: 2024-1-20 08:11
沙发!沙发!
作者: 小林奇杰    时间: 2024-1-20 08:20
有竞争才有进步嘛
作者: 白马皇子    时间: 2024-1-20 08:25
找到好贴不容易,我顶你了,谢了
作者: 好人你我他    时间: 2024-1-20 09:01
看帖回帖是美德!
作者: 五龙闹海    时间: 2024-1-20 09:50
我抢、我抢、我抢沙发~
作者: 白马皇子    时间: 2024-1-20 09:58
好好 学习了 确实不错




欢迎光临 西虹市网 (http://bbs.xihong021.cn/) Powered by Discuz! X3