我正在使用上述技术开发一个单独的项目。目的是为 Android 创建一个问答游戏。问题由“测验大师”预先在线创建并提交到MySQL数据库。然后由 Android 应用程序检索它们。我已经使用 PHP 建立了电话和服务器之间的链接,数据以 JSON 格式发送。
我希望每个问题都有一个预先分配的时间,用户必须回答这个问题,一旦时间过去,Android 应用程序就会阻止问题被回答。时间由测验大师选择并与其余测验信息一起提交到数据库。
由于并非每个人都可能同时从服务器上将测验检索到他们的手机上,因此在确保某人回答问题的时间不会比另一个人更长方面存在问题。我想让每个人都尽可能保持同步。很难确保每个人都在同一时间完全,但我愿意让人们不能延迟检索测验然后得到完整的 30 秒(或其他) .为了公平起见,一旦测验大师开始测验,就需要开始倒计时。
我正在努力想办法解决这个问题。我有一个非常基本的客户端-服务器系统设置,我想不出一种方法让服务器跟踪“剩余时间”,然后向手机发送一个数字,指示剩余时间量。
对不起这篇文章,希望有人有想法!将不胜感激! :)
祝一切顺利
J
最佳答案
也许您可以让每个用户的设备跟踪他们回答问题的速度,然后比较提交答案后的响应时间。例如:服务器向电话发送一个问题并告诉它有 30 秒的时间限制。一旦用户查看问题,计时器就会在他们的手机上启动。然后说他们花了... 14.79 秒才能正确回答。手机会发回信息,说明每个用户花了多长时间,然后将他们进行比较,看看谁先回答了问题,谁都在时限内回答了问题。这种技术可能无法使问答游戏在所有连接的设备上完美同步,但它应该保持游戏的公平性。
关于java - Android/PHP/MySQL 项目协助 - 保持服务器和手机应用程序同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5094329/