我正在用android编写一个小游戏,基本上是一个回合制的桌面游戏,我对我的多人游戏设计有一些疑问,如果这是不好的做法。
客户端 - 服务器通信所需的速度充其量是慢的,就像wordfeud一样,所以我使用AsyncTask来做我需要的,任务的例子是:LoginTask,RegisterUserTask,StartGameTask,PlayMoveTask。
要初始化我可以写:
VerifyUserTask verify = new VerifyUserTask();
verify.execute(username, password);
在服务器端,我有一个PHP脚本,它接收发送的参数,并返回结果。
再次回到android我可能需要等待使用
的回复Boolean verified = verify.get(10, TimeUnit.SECONDS);
很少使用verifybit,只有在我需要验证用户确实是有效密码的有效用户时才会使用。
我知道这有效,但这是一个好的解决方案吗?考虑到它的轻量级,足够快,我可以记录错误和响应。
提前致谢...
答案 0 :(得分:2)
尽量避免将AsyncTask
用于所有内容。它会给你带来比解决方案更多的问题。
创建一个Android Service
来处理所有后端逻辑,并找到一种与您的活动进行交流的方法。
我建议您了解SyncAdapters
。这是一个blog post,有很好的介绍。