我目前正在编写一个 Android 游戏。该游戏具有社交部分,您可以在其中查看朋友的分数并将其与您的分数进行比较。
我目前不确定应该多久更新一次用户的分数。例如将玩家的分数发送到服务器。
而且我不确定我应该多久从服务器下载新数据,例如。朋友分数。
我更新得越多(向服务器发出请求),它就会变得越昂贵,但是我不希望它更新得慢,否则用户可能会感到不安。
什么是理想的更新时间?我每3分钟在想一次?
您可以通过单击按钮手动获取最新分数的附加选项将其保持在 10 分钟。
这将避免来自服务器的定期更新,并且还允许用户在愿意的情况下提取最新更新。
每次游戏结束后,将分数发送到服务器,正如上面的答案所说,有一个获取分数的按钮会更好。您可以执行类似 View Leaderboard Button 之类的操作,单击哪个应该获取分数
也许您可以考虑使用其他技术使服务器在发生更改时通知客户端。
例如长轮询:http ://en.wikipedia.org/wiki/Push_technology#Long_polling
您也可以实现一个简单的推送机制。设置一个 MQTT 代理,让您的应用程序订阅一个主题名称,每当有令人信服的用户更新他们的分数(例如 100)时,将新的分数列表作为消息发布(对于这样的列表,消息限制应该足够了)和在 Android 应用中更新您的列表。请注意,就成本而言,MQTT 是实现这一目标的一种非常好的方法,但如果您不熟悉此概念,则设置此机制可能会有些棘手。