【问题标题】:Firebase Storage vs Database for Game DataFirebase 存储与游戏数据数据库
【发布时间】:2018-12-20 11:06:14
【问题描述】:

我开发了多款游戏,简单的游戏,都带有本地存储。当用户启动应用程序时,我会在 Documents Directory 中创建一个 local_user.dat 文件,并在用户获得更多货币、购买皮肤等时更新它。

如果用户删除应用程序并稍后再次安装,他将丢失所有进度。有点明显所以,为了避免这种情况,我想在线存储数据。万一他删除了该应用程序,我将在服务器上进行备份。当用户重新安装应用程序时,我会下载备份文件,而不是从零开始

经过一番搜索,我发现 Firebase 可以为我处理这个问题。我的问题是这两种方法中哪一种对我更有效以及为什么。

这是我的 local_user.dat 的一部分:

  "song_1_cost" : 100,
  "quote_2_owned" : false,
  "sound_on" : true,
  "song_11_owned" : false,
  "song_3_cost" : 250,
  "skin_2_cost" : 200,
  "song_5_cost" : 100,
  "song_equipped" : 0,
  "skin_4_cost" : 500,
  "song_7_cost" : 250,
  "quote_1_cost" : 100,
  "quote_4_cost" : 200,
  "song_9_cost" : 100,
  "quotes_equipped" : 1,
  "shuffle_enabled" : false,
  "song_12_cost" : 250,
  "tutorial" : true,
  "game_center_enabled" : false,
  "zen_level" : 1, etc

我的 local_user.dat 可以变化,从包含 30 个键到 100 个键,它的大小平均为 1.5 kb。

这两个功能中哪一个更适合我的游戏?

  • 存储 - 将我的 local_user.dat 保存到 firebase 存储并不断用更新版本替换它

  • 数据库 - 使用用户数据创建 json 和:

    1. 更新整个json
    2. 更新修改的json键

【问题讨论】:

  • 您建议我使用什么来在线保存数据?

标签: swift firebase firebase-realtime-database firebase-storage


【解决方案1】:

实时数据库和云存储都适用于您的场景。将其存储在数据库中的好处是您可以为用户查询/访问游戏数据中的特定元素,例如他们的zen_level 值。

如果您的用例不需要(似乎不需要),我可能会选择更便宜或更简单的选项(根据您的非功能性要求)。 Cloud Storage 肯定更便宜,正是因为它不提供与数据库相同的功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-06
    • 2017-06-13
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多