0421--"数字口袋精灵app"二次开发(Blackbriar团队开发)
"数字口袋精灵app"二次开发
目录:
一、项目github总仓库推送
二、开发成员
三、分工与合作
四、各模块成果
五、心得墙
六、团队成员贡献分
内容:
一、项目github总仓库:
https://github.com/LiangZhilin/We-have-bing |
二、开发人员:
223孙海林(商软2班) |
225江志彬(商软2班) |
256林集团(商软2班) |
224颜文生(商软2班) |
404曹嘉琪(商软1班) |
142梁植淋(商软1班) |
三、分工与合作:
林集团、颜文生:负责该安卓程序在Eclipse-adt及Android stdio上的部署工作,并整理出一套详细的教程文档。 |
孙海林、江志彬:负责对项目逻辑运算部分做多场景的单元测试,找出运算上的Bug等问题。 |
曹嘉琪:负责真机运行测试,从用户的角度分析应用。找出应用存在的一些用户体验问题,并提出改进的建议。 |
梁植淋:负责分析项目任务、团队协调及分工、总代码仓库的管理、统合各成员的成果、以及总博客的执笔 |
四、各模块成果:
1.在android studio上部署项目(模块负责人:林集团)
一、Android Studio 安装步骤1 - 安装JDK并配置环境变量jdk安装步骤请参考百度经验: http://jingyan.baidu.com/article/7e440953f1ae532fc0e2efbf.html 步骤2 - 安装 Android Studio1.打开Android Studio安装包,点击下一步2.选择你的jdk路径
3.这个页面全部打勾:
4.指定SDK路径:
5.有点慢,不要方,坐等进度条即可: 6.出现以下界面,android studio就装好了,没错!就是这么简单: 二、部署“数字口袋精灵”app项目:1.去总仓库把项目fork到自己的仓库中,然后下载项目 2.打开eclipse导入我们的clone下来的项目 3.导入“数字口袋”app项目 然后,你就可以对项目进行二次开发了,没错,就是这么简单 |
2.在eclipse-adt上部署项目(模块负责人:颜文生)
1.网上下载jdk
2.jdk的安装与配置环境变量:此步骤参考链接 http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html 3、Github上fork这个项目的源代码,截图如下:
4、将代码下载到本地
5.将项目导入到eclipse-adt里 摸索到这里,就这样项目部署完了,好像也挺简单 6、然而,还是出现了问题,运行不成功,运行时出现以下错误信息提示,正在努力解决中
|
3.对项目就行单元测试(模块负责人:孙海林、江志彬)
江志彬部分: 界面的内容就不多解释了 PlayActivity 每一题生成之后都会进行计算 保存在 String staticanser[i]中 3:带括号题目计算将跳转到KuohaoCalc类 计算
Calculator类 执行顺序: 之后r1、r2的 numerator 和 denominator就分别有了分子分母的值 r1 (1,2) KuohaoCalc类 参数khdate的值为括号题目生成时的字符串 传去kuohaocalc类计算 直到不存在括号 进行无符号四则运算 返回结果
孙海林部分: 测试结果如下: 注: 1、分数加减乘除计算和带括号的四则运算可以测试 2、阶乘和普通整数的加减乘除运算,由于作者写在同一个方法下,无法拆分,耦合度高 下 面是测试修改源代码的图:
|
3.对项目就行运行测试(模块负责人:曹嘉琪)
一、从质量保证的角度 1.当最后一题回答错误,最后显示的答对题数比实际答对题数多一题,而且回答最后一题,无论是对还是错,完全没提示
2.游戏结束后,由于没有设置“重新开始”按键,只能按返回键,会出现闪退的问题
二、从用户的角度 1、游戏结束后,要有“重新开始”或者选择“继续通关”按钮,可以设置通关易难程度或者时间计算,由于不同用户的能力不同,这样可以让用户在练习中不断提升自己的能力,最好有个排名版,这样更能鼓励用户积极认真思考答题 2、答题的生命条应该动态显示答对几题、答了几题,一目了然,便于用户清楚自己回答的题数和答对题数,有些学生如果发现自己的答对题题数太少了,在接下来的题数会更加认真的回答 3、可以设置“取消音乐”按钮,毕竟有些学生边做题目边听音乐会受影响,所以有“取消音乐”的功能再人性化不过 4、作为本项目的测试人员,有个很大的体会:我刚刚那题算错了,我想重新看看思考刚刚做的题,根本不能返回,最好有两个按钮“上一题”“下一题”,让用户有重新思考的时间,这样更能达到提高用户计算能力的效果 5、添加个用户交流版块,能让用户在交流中碰撞出更多的火花 三、从产品的角度 1、该app除了把对象定义为小学生,如果可以的话,添加初中、高中等数据计算,这样整个app的面向对象更多,用户量也会大大提高,知名度更高 2、盈利方面可以通过植入广告,由于该app是面向学生,所以在广告的选取方面也要适合学生发展的,不要什么广告都植入 3、app的推广可以通过app之间合作,比如一个相关的app下载的同时会将该app推荐给用户,是否下载就交给用户去决定 四、从开发者的角度,在架构、算法、技术实现、可扩展性、代码规范等方面可以怎样优化?该app的逻辑方法比较凌乱、命名不规范,例如求公约数的方法为f,这样就不利于二次开发以及单元测试
|
五、团队合作项目之“心得墙”:
曹嘉琪: 组长的合理分配任务,每个人负责不同的部分,最后任务能顺利完成,也多亏其他几位同伴的功劳,大家都为了完成这项任务,也是蛮拼的。 梁植淋: 很荣幸能跨越两个班把这堆人组合在了一起,第一次合作超乎预想的顺利,每个人都很配合,都为团队贡献了自己的力量,还在合作中体会到了沟通的魅力。感谢队友们对我的支持肯定与包容,深深感受到团队的力量实在庞大,也深感做一个领队要考虑的事情很多很多,如工作分配的合理性,如何促进成员间的沟通,还有言语表达是否恰到好处等。 林集团: Android studio之前就已经安装好了,当时自己弄了很久的哦,遇到了各种各样的问题,现在问题解决了,但是,以后还是会遇到这种不是“课本知识”的问题,我觉得真正重要的是解决问题思维,学习的知识是无止境的,而问题也会伴随我们的学习工作,bug也是天天要改,那么,掌握一种解决问题的思维就显得非常必要。 举个例子来说,要想有效率的解决bug,首先我们需要掌握调试技巧,查看日志的技巧,以及看外文技术软文的技巧,而不是但但盯着几行代码用逻辑推理演福尔摩斯。而解决各种问题呢,我们首先必须了解问题的本质,如这次的android开发环境搭建,我们需要安装许许多多的插件,我们应该首先弄懂sdk,adt,虚拟机究竟是嘛东西,然后仔细看几篇有质量的教程,掌握大概步骤流程在进行实际操作,不然在不了解的情况下开始实际操作,很容易出问题,而且出了问题查找解决方案都不知道,就如同一道数学题不懂,我们首先是掌握缺失的知识点,然后掌握解题思路,而不是抄答案,这不是解决问题之道。好了我的genymotion又不能用了,大家以后尽量不用genymotion,问题太多了。 颜文生: 先感谢我的队友为我分配任务,让我感觉到很荣幸。其次我的任务是安装下载eclipse—adt等,之后导入项目运行。该过程中一句话总结就是很烦,并且很多机制不了解,为此有时感到很沮丧。队友知道我遇到麻烦就马上给我提建议,先百度看看安装教程。于是我就按着队友给我的建议去完成。在安装过程中,可能并不是那么顺畅,到最终还是迎刃而解。虽然很多机制完全不理解,但我还是觉得慢慢来,总结经验才是我们需要完成的,接下来的事情就是要好好理解为什么需要安装sdk之类的内容。 孙海林: 1、团队项目可以锻炼与团队之间的配合和默契度 江志彬: 这是我们团队的第一次合作,经由组长植淋分配任务,各自完成各自的任务然后由他总结起来,使第一次团队合作任务快速完成。希望在接下来的团队合作中大家磨合得越来越好,共同进步。 |
六、团队成员贡献分:
虽然我们团队六个人,看起来好像有点多。但对比我们所做的工作量,其实人也就不多了,这里的贡献分就按大家的工作量给吧,虽然大家的能力都无可挑剔。
孙海林:22 |
江志彬:21 |
林集团:18 |
颜文生:17 |
曹嘉琪:19 |
梁植淋:23 |
最后,感谢队友,合作愉快!