如何更新游戏中的最高分?

时间:2014-04-09 16:05:59

标签: android multithreading android-asynctask

在我的安卓游戏中,我希望在所有用户中显示最高分。因此,每个安装都应该ping我的服务器以获得最大值,并且如果任何用户得分超过当前最大值,也会更新服务器。显然,这些与服务器的通信必须在一个单独的线程中。这可以使用threadAsyncTaskservice来实现。 游戏没有。 activity的{​​{1}},其中一些可能显示最高分。因此,一旦游戏开始,服务器就会被激活是最佳的。但是,用户可以非常快速地进入下一个活动。那么,这会破坏threadAsyncTask还是service?那么,上述哪三种方法更适合这一要求呢?

1 个答案:

答案 0 :(得分:0)

听起来你会想要一个所有活动都可以访问的Singleton类。 Singleton可以ping您的服务器以获得最高分(我建议使用像http://loopj.com/android-async-http/这样的库),然后保留对它的引用,以便任何活动都可以访问该值。

您可以向Singleton添加一些更复杂的方法,以处理来自服务器的刷新并在用户击败时更新最大分数。您可能希望能够使用单例来注册回调,如果最高分数已更改,则会对活动发出警报。

相关问题