
《Android项目开发实训》项目总结报告新
课程设计小组报告课程名称:软件系统课程设计校内方向:移动互联方向设计名称:xxxxxxxxx系统专业班级:软件1408班学号:2014001684组长姓名:李三组员姓名:李三、李三、李三李三、李三、李三指导教师:孙静宇2017年07月06日 任务书...................................................0太原理工大学课程设计任务书学生姓名|李三|专业班级|软件1408|课程名称|应用软件方向综合课程设计|设计名称|Xxxxx系统|设计周数|2|设计|任务|主要|设计|内容|根据选定题目填写。
例如 1.搭建xxxx环境;| 2.按照….进行分组,选择..设计题目;| 3.开发成绩查询、…等三个功能;|设计要求|根据选定题目填写。
例如|1.开发、设计与运行环境要求:Tomcat7.0、JDK1.7,….等;|2.完成3-5以上功能点;|3.进行模块测试、系统测试、编写设计文档;|主要参考|资 料| 参考书籍及文章:| 作者1,作者2.书名[M].出版社名.出版年| 作者1,作者2..文章标题[J].出版物名称.出版年,卷(期):初始页码-终止页码.|学生提交|归档文件| 项目小组必须提交一份完整的项目技术说明文档(纸质版和电子版),文档内容必须包含《需求分析说明书》、《概要设计说明书》、《详细设计说明书》、《源程序》、《测试计划》、《测试报告》与《项目开发计划》等部分。
每一位同学应提交一份开发日志,详细记录课程设计过程中出现的问题、解
总结怎样读别人Android项目源代码
读别人的项目源码,可以先找一个切入点,如程序的入口,一层层深入阅读,跟踪代码的调用,便能了解整个项目。
在阅读时不必纠结于一点,或过于深入某一点(除非该功能很重要),这样才能对项目有大致的了解,加快阅读的速度。
在寻找切入点时,可以根据类名、方法名等,快速定位功能,免去阅读无用代码的时间。
总结怎样读别人Android项目源代码
经过参与各种各样的移动项目,我总结出一些要考虑的方面。
当你设计或构建一个移动应用时候,需要把它们记在脑中。
移动app开发考虑的方面认证层(Authentication Layer)这应该是你开发链中的第一步。
为了应对各种各样的认证请求与inflight request,这一层应该有足够可扩展性。
需要留意认证令牌的刷新,令牌刷新失败或类似情况时的错误处理。
自动编译要确保你为安卓和iOS建立了一个能自动编译的安装程序,并且有把他们分配给测试者的渠道。
舒适的移动体验如果因为一些原因,即使是没有网络或者api停止工作了,也需要保证用户能够返回并从app退出。
用户应该总能够点击到导航栏,这样还能够进入缓存中的页面,注销,当网好的时候重新加载,或退出app等。
一定避免用户不得不强行终止app进程的情况。
这是需要提前考虑的另一个设计特点。
数据封装当设计数据封装时候一定要考虑API的存留时间(ttl),用默认的ttl,缓存层,采用多数据源传送以标准表或者键值存储的数据。
推出更新如果app的数据频繁改变,人们想要看到更新的消息,那么这个特性会很有用。
这对于那些展示实时事件更新的app很需要。
崩溃分析把崩溃分析与app联系起来非常重要,这样如果用户的app崩溃了,我们就能知道原因并可以更快的在下个版本修复。
许多工具都可以做到这些。
数据存储从app设计出发,这是需要考虑的最重要方面。
有很多种在手机中存储数据的方法。
比如WebStorage(LocalStorage, SessionStorage) , InMemory, SQLite. Localstorage的大小是10MB,如果你的要存的数据比这个小,它是个好选择。
它的缺点之一是,当你的内存满了以后,操作系统会清空Localstorage数据。
SQLite是基于文件的数据库,而且对于更大的文件更加稳定。
它是嵌入式关系型数据库,如果你想把大量数据存储\\\/缓存在客户端,它会是你的好朋友。
导航堆栈当需要在不同页面间导航,并且有不止一种入口可以到达需要的页面时,它就是app最重要特性之一。
它同样可以被分为不同的导航堆栈,比如:App导航,Tab导航,菜单导航等。
要时刻考虑到各种情况,这样用户就不会陷入循环依赖 (死胡同)而需要强制停止app。
网络连接开者经常假定人们总是有良好的互联网,按照这个逻辑设计app并把它推出。
这也是当app不工作或不能持续下载数据时,大部分新手开发者受到打击的一点,最终导致了app在apple\\\/google商店的低评价。
一旦app已经推出,修复这类问题就很不容易,需要大量的退化。
所以设计app时,这是需要考虑的重要一点。
检查平台别忘了这个app是建立在哪种平台上的。
保证所有的开发者\\\/测试者都在机器上安装了相关程序,并且把这些程序列入文档,这样任何新来的开发者都可以很快掌握。
要清楚开发者和测试者要怎样进行测试。
对于安卓,至少需要安装Android Studio, Gradle.对于iOS你需要创建签名请求来生成证书,还有配置文件。
(如果你事先不知道它至少花费一天,你会觉得这个过程很长。
建议去找已经做过这一步的人,这一步就会缩减到15分钟)。
不管你用哪种架构,要进行iOS开发你都需要至少一个Mac和iPhone。
付费如果你的app需要付费,需要遵照Google和苹果付费规则文件。
注意:你同样需要建立一些后端,这样当用户为你的app付费时候就可以去处理收据,并且你需要在服务器端保存这些单据。
本地特性用列表列出app上需要本地设备支持的特性。
例如:相机,状态栏,定位服务,通知等。
并检查这些支持是否提供给了框架内所有内容。
推送服务如果你的app需要推送服务,提前决定你要用哪家服务。
检查针对选择的框架所用的插件是否有效。
第一次用iOS测试这些时,为了让设备接收推送,需要添加一个app证书。
同样也要决定你需要基于主题推送还是基于设备。



