首页 > 编程语言 >安卓APP源码和设计报告——抢答器

安卓APP源码和设计报告——抢答器

时间:2022-12-17 14:01:18浏览次数:59  
标签:倒计时 界面 安卓 连接 抢答 点击 源码 抢答器 客户端

抢答器项目说明书

项目代码结构:

(1)Socket服务端:

安卓APP源码和设计报告——抢答器_服务端

(2)抢答器客户端:

安卓APP源码和设计报告——抢答器_服务端_02

2.项目重要技术点说明:

(1)本次项目主要是利用Socket在客户端和服务器端之间传输字符串数据实现通信。

(2)读取的试卷数据存放在服务端的文件中,而试卷内容主要是JSON格式,所以抢答器客户端使用了文件存储技术和JSON解析技术。

(3)因为项目中界面需要实时动态变化,连接Socket之后,相当于开了一个线程,因不能在线程中更新界面,需要使用异步回调机制Handler处理信息,通知界面更新。

(4)在抢答之前需要倒计时,将Timer和TimerTask两个类结合使用,可以实现执行一次倒计时任务。

(5)弹出框PopupWindow由这个类实现的,可以使用任意布局的View作为其内容,也可以自定义弹出框显示、隐藏的动画效果,且这个弹出框是悬浮在当前activity之上。

(6)应用开启界面使用了Animations的API,这个实现了淡入淡出、位置移动等动画效果,且应用在UI控件之中。

3.项目使用说明:(客户端)

  1. 设置用户名:打开程序,会打开启动界面,并跳到如下界面,设置自己的游戏名字。本小组用了三个模拟器测试:分别命名为AA,BB,CC:

安卓APP源码和设计报告——抢答器_客户端_03

(2)连接服务器:若使用模拟器测试会自动连接,连接成功就会跳到主界面,若超时(6秒)就会提示“连接出错”,并需要客户自己重新输入IP(10.0.3.2);若为真机测试则需要自己手动输入。

安卓APP源码和设计报告——抢答器_抢答器_04

安卓APP源码和设计报告——抢答器_抢答器_05

(3)主界面:如果连接成功,进去了下面蓝色的界面,蓝色界面的最上面有建立成功的标志,服务器会提示有人访问,需要点击确定(服务端允许),客户端才可以正常运行。

安卓APP源码和设计报告——抢答器_抢答器_06

(4)主界面按钮:下图中发起请求按钮是联机抢答,右侧是显示用户的名字

安卓APP源码和设计报告——抢答器_客户端_07

(5)发起抢答请求:点击发起请求,经由服务器处理,所有客户端会出现提示框:

安卓APP源码和设计报告——抢答器_抢答器_08

(6)请求取消:若点击取消,所有客户端的对话框将消失,并在下面提示“有人退出,连接终止”。

安卓APP源码和设计报告——抢答器_服务端_09

(7)连接过程:若每当一个客户端点击确定,在上方会显示连接的人数,比如下面有两人连接了,显示connecting......2/3。

安卓APP源码和设计报告——抢答器_客户端_10

(8)准备抢答:所有人点击确定连接之后,会有提示,所有试卷下载完毕,然后进入抢答阶段,这时候会弹出倒计时对话框:请准备抢答(倒计时5秒)!

安卓APP源码和设计报告——抢答器_客户端_11

(9)抢答成功:此时显示第一道问题:如果有用户提前抢答并抢答正确,所有客户端会提示谁抢答成功并继续倒计时进入下一道题。若抢答时答案错误,则提示答案错误,其他用户仍可以抢答。(如下图)

安卓APP源码和设计报告——抢答器_客户端_12

(10)游戏结束:本程序用了3道题来测试,当抢答完三道题之后,显示对话框:游戏结束。

安卓APP源码和设计报告——抢答器_服务器_13

(11)显示结果:所有客户端点击确定后,会在最后面显示出各人的得分总计。

答题规则:每抢答答对一道得1分。

如下方显示:“个人得分score:CC:0,BB:0,AA:3”

此截图为用户名BB的客户端,BB和CC得分为0分,但AA为3分,这样则表示AA胜利。

安卓APP源码和设计报告——抢答器_客户端_14

标签:倒计时,界面,安卓,连接,抢答,点击,源码,抢答器,客户端
From: https://blog.51cto.com/u_15681752/5949792

相关文章

  • 固定资产管理系统(论文+PPT+源码)
    固定资产管理系统摘要随着计算机信息技术的发展以及对资产、设备的管理科学化、合理化的高要求,利用计算机实现设备及资产的信息化管理已经显得非常重要。固定资产管理系统......
  • pyqt5制作俄罗斯方块小游戏-----源码解析
    一、前言最近学习pyqt5中文教程时,最后一个例子制作了一个俄罗斯方块小游戏,由于解释的不是很清楚,所以源码有点看不懂,查找网上资料后,大概弄懂了源码的原理。二、绘制主窗口......
  • 技术/源码/开源网站
    1.Androidsourcecodeonline​​http://www.netmite.com/android/mydroid/​​2.​​http://sourceforge.net/​​ Find,Create,andPublishOpenSourcesoftwaref......
  • Universal-Image-Loader源码分析,及常用的缓存策略
    讲到图片请求,主要涉及到网络请求,内存缓存,硬盘缓存等原理和4大引用的问题,概括起来主要有以下几个内容:原理示意图   主体有三个,分别是UI,缓存模块和数据源(网络)。它们之间......
  • android-async-http框架源码分析
    async-http使用地址android-async-http仓库:gitclone​​https://github.com/loopj/android-async-http​​源码分析我们在做网络请求的时候经常通过下面的方式实例化Async......
  • 安卓高端破冰 vivo率先“微笑”
    2022年市场走到尾声,年初曾有预测市场会略有回暖,事实是后期的现实持续走低,今年手机厂商的日子并不好过。但是在这样的低迷氛围中,市场也在发生着微妙的变化。从市场份额来看,v......
  • 安卓高端破冰 vivo率先“微笑”
    2022年市场走到尾声,年初曾有预测市场会略有回暖,事实是后期的现实持续走低,今年手机厂商的日子并不好过。但是在这样的低迷氛围中,市场也在发生着微妙的变化。从市场份额来看,......
  • 【脚本项目源码】Python制作艺术签名生成器,打造专属你的个人艺术签名
    前言明天就是拥抱情人节,情侣们会在公开的场合拥抱,向世人宣告你俩的爱意,也让这个寒冷的冬天变得格外温馨。到了年底依然能热情拥抱,也见证了两人情意如昔。今天子川就给大......
  • Spring源码-08-容器refresh之invokeBeanFactoryPostProcessors方法
    Spring源码-08-容器refresh之invokeBeanFactoryPostProcessors方法ConfigurationClassPostProcessor作用的时机扫描注册用户BeanDefinition到Bean工厂一Bean工厂后置处......
  • Spring源码-10-Bean工厂后置处理器
    Spring源码-10-Bean工厂后置处理器提供了对Bean工厂中BeanDefinition的修改能力一类图交互对象都是BeanDefinition,只是入口介质不同BeanFactoryPostProcessor是通过......