java - 我应该什么时候将任务进度保存到服务器?

标签 java android ios libgdx server

我正在为 Android/iOS 制作游戏。我最近每天的任务都很好用,唯一的问题是我不知道什么时候应该保存任务进度。

我不想每次你在游戏中做一些可能影响任务进度的事情时都调用服务器。

举例来说,你的任务是“赢得 3 场比赛”,我想在你完成任务之前将任务进度放在首选项中,但是如果你在完成任务时退出游戏,这可能会导致一系列不需要的行为例如 2/3。

有什么聪明的方法可以解决这个问题,还是每次你做一些会影响日常任务的事情时,我只需要调用服务器并直接保存到数据库中?

据我所知,当用户退出应用程序时,有没有办法做到这一点?

最佳答案

Is there a smart way to go about this or do I just have to make a servercall and save directly into db every time you do something that can effect a daily quest?

iQue,每次都调用服务器并验证他们发送给你的数据(他们真的实现了他们声称的吗?),用户可以root设备或修改游戏客户端,所以这是唯一正确的方法去做。

As far as I know there is no way to do it when the user exits the app?

如果你想在 Libgdx 上退出应用程序时做任何事情,同样只有一种正确的(本着 Libgdx 的精神)方法,并且在其他答案中没有提到,因为你可以写这个交叉 -无需深入研究 Android/iOS 细节的平台:覆盖主游戏类 (ApplicationListener) 的 dispose 方法。

关于java - 我应该什么时候将任务进度保存到服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37531006/

相关文章:

java - Base64转字节数组解码优化——Java

java - XSLT 转换,如果源中不存在则输出元素,如果存在则保持原样

java - 在java中保存所有时区的日期时间

android - 如何在 firebase 的分析中将事件发送到操作 - Android

ios - 呈现 View Controller 后自动布局无效(以及许多情况)

ios - TextField 变得崩溃

ios - native 与跨平台 - 消息应用程序

java - Hibernate session.createCriteria 与 session.get 性能对比

java - Java中二维int数组的二进制转换为十进制并存储变量

java - 如何通过代码浏览到android中的文件资源管理器