0428-团队项目2
4.在此基础上,进行软件的改进。
首先,我们把这个软件理解成一个投入市场的、帮助小朋友进行算术运算练习的APP。
从质量保证的角度,有哪些需要改进的BUG?
从用户的角度(把自己当成小学生或真的请小学生帮忙),需要在哪些方面进行改进?
从产品的角度(软件的市场定位、推广方式、盈利模式等),我们要对现有软件做些什么手脚?
从开发者的角度,在架构、算法、技术实现、可扩展性、代码规范等方面可以怎样优化?
......
参考但并不限于以上几条,列出你们觉得需要改进的地方及理由。(博客)
并尽可能从你们组的列表中选择两点将改进实现。(GITHUB)
截止日期:2016.4.28晚10点。
一、需要改进的地方
从质量保证的角度:
1、题目和选项均有重复;
2、答题后的提示不明确,只有声音提示,关闭声音就不清楚是否对错;
3、答错题后没有给出正确答案;
4、进入APP后没有任何文字说明,使用者会不清楚这个软件的用途;
5、每答完一套题后只能关闭APP重新再来,没有设置退出按钮;
从用户的角度:
1、一些运算符号看不懂,比如/*!,
2、!是求阶乘,小学现在还没学过;
3、式子看起来不美观;
4、只有一种做题模式,做起来没意思,最好可以有选择题量、根据时间做题、做填空题等多种做题模式;
5、有些题目太难了,不适用于年级较低的学生;
6、答题精度条可以根据答题对错显示不同颜色;
从产品的角度:
1、没有广告就没有盈利;
2、APP的名字是英文名,用户很难搜到,不便于传播推广;
从开发者的角度:
1、注释很少,不便于别人修改和理解;
2、没有生成文档,不便于维护和继续开发。
二、预计解决方案:
1、题目和选项均有重复;
2、进入APP后没有任何文字说明,使用者会不清楚这个软件的用途;
3、每答完一套题后只能关闭APP重新再来,没有设置退出按钮;
4、没有广告就没有盈利;
三、已解决的问题
1、将界面进行完善:①右上角添加了下拉菜单,可以点击“关于”和“退出”菜单,并且实现对应功能;②左上角有软件图标和标题;③进入答题界面的右上角添加了“返回”按钮,可以返回主界面。
主要代码:
菜单栏中的游戏简介和退出菜单,点击“关于”和“退出”菜单对应弹出的对话框:
1 public boolean onCreateOptionsMenu(Menu menu) { 2 // Inflate the menu; this adds items to the action bar if it is present. 3 getMenuInflater().inflate(R.menu.main, menu); 4 return true; 5 } 6 public boolean onOptionsItemSelected(MenuItem item ){ 7 switch(item .getItemId() ) { 8 case R.id.about: 9 aboutAlert(this.getResources().getString(R.string .game_introduce ) ) ; 10 break; 11 case R.id.exit: 12 exitAlert(this.getResources() .getString(R.string .exit ) ); 13 break; 14 15 } 16 return true; 17 } 18 private void exitAlert(String msg){ 19 AlertDialog.Builder builder=new AlertDialog.Builder(this); 20 builder .setMessage(msg).setCancelable(false).setPositiveButton("确定",new DialogInterface.OnClickListener(){ 21 @Override 22 public void onClick(DialogInterface dialog, int which) { 23 finish() ; 24 } 25 }) .setNegativeButton("取消",null); 26 builder .create() .show() ; 27 } 28 private void aboutAlert(String msg){ 29 AlertDialog .Builder builder=new AlertDialog.Builder(this); 30 builder .setMessage(msg).setCancelable(false).setPositiveButton("确定",new DialogInterface.OnClickListener(){ 31 @Override 32 public void onClick(DialogInterface dialog, int which) { 33 34 } 35 }) .create().show(); 36 37 }
答题界面的返回按钮功能实现、资源的设置。
1 <Button 2 style="?android:attr/buttonStyleSmall" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:text="返回" 6 android:id="@+id/button" 7 android:layout_alignTop="@+id/horiz" 8 android:layout_toEndOf="@+id/imageView1" 9 android:layout_alignBottom="@+id/textView1" 10 android:onClick="onBack" />
1 public void onBack(){ 2 Intent intent=new Intent(PlayActivity.this,MainActivity.class); 3 startActivity(intent); 4 //this.finish() ; 5 }
1 <?xml version="1.0" encoding="utf-8"?> 2 <resources> 3 4 <string name="app_name">MathsApp</string> 5 <string name="action_settings">Settings</string> 6 <string name="hello_world">Hello world!</string> 7 <string name="exit">真的要退出游戏吗?</string> 8 <string name="game_introduce">游戏简介:该游戏是一款适合小学生计算加减乘除四则运算的智力应用软件。内置十道选择题,答对6道即为合格,否则为不及格。</string> 9 10 </resources>
1 <menu xmlns:android="http://schemas.android.com/apk/res/android" > 2 3 4 <item android:id="@+id/about" 5 android:title="关于"/> 6 7 <item android:id="@+id/exit" 8 android:title="退出"/> 9 10 </menu>
2、在界面和进入答题界面添加了动画,返回后也是滑到主界面,使得界面转换间衔接自然
主要代码:
1 public void Start(View view) 2 { 3 mPlayer=MediaPlayer.create(this, R.raw.click); 4 mPlayer.start(); 5 Intent intent=new Intent(this,PlayActivity.class); 6 startActivity(intent); 7 overridePendingTransition(R.anim.rotate,R.anim.rotate); 8 // MainActivity.this.finish(); 9 }
运行效果:
本次团队合作的github地址:
https://github.com/yangjj123/TeamWork
三、总结
这次团队合作大家的合作能力加强了许多,沟通也好了很多,不像第一次那么生疏。都学到了一些关于安卓的基本功能,比如修改布局,调用资源来实现所需功能,学会制作GIF动图等,个人的进步肯定也很大,因为有时候一个人是不太想学习的,可是大家一起合作的话就会相互督促,如果你不学你就会拖队友的后腿,而且在合作的时候大家的一些缺点也会慢慢改进,比如有队友会很粗心,有的写代码不规范等等,大家一起合作的话这些问题就会少很多。
不过这个APP还有很多功能需要改进,我们还需要学习更多关于安卓的知识。
团队成员的个人贡献分:
102 杨晶晶:19分
105 董婷婷:17分
106 邹育萍:18分
157 容杰龙:23分
343 卓炜杰:22分