【问题标题】:Which storage option for preserving app data in android?哪个存储选项用于在 android 中保存应用数据?
【发布时间】:2014-12-06 20:09:13
【问题描述】:

我不希望当应用程序被卸载或设备丢失/处置时,用户输入 Android 应用程序的数据消失。我一定想要的是 - 数据必须绑定到用户帐户而不是设备,用户可以通过使用他的登录凭据登录到他的帐户并查看输入的所有数据从任何其他 android 设备安装应用程序从旧/其他设备过去。请建议最适合这种情况的存储选项。

【问题讨论】:

    标签: android sqlite cloud storage android-contentprovider


    【解决方案1】:

    这是一个非常笼统的问题,我认为有人可能会投票结束它,但我仍会尝试笼统的答案。

    本质上,您希望将数据保存在某些外部数据存储中(而不是设备上)。所以显而易见的是服务器。您将需要设置一台机器并在其上运行一个可以与您的应用程序通信的服务器。此外,您需要为每个用户提供唯一的 ID(身份验证?),它将用户数据与用户链接起来,这样如果用户卸载并重新安装您的应用程序,应用程序就可以将用户的数据从服务器下载到移动设备应用程序在其上运行。

    对于服务器,您可以查看 Amazon AWS、Google App Engine、Heroku 等。您可以在其中一个地方设置一个最小的服务器,也许在那里设置一个数据库(SQL/NoSQL)并获得一个唯一的 URL,以便该应用程序可以 ping 服务器(显然是静态 IP)。然后,您的应用可以向您的服务器发送网络请求,为用户获取数据并在用户需要时将其保存到应用中(例如重新安装、设备更换、每月等)。

    希望这会有所帮助!

    【讨论】:

    • 是的,确实如此。我同意这是一个通用问题。当我搜索它时,我找不到任何简单的东西。大多数答案都讨论了哪些选项可用,而没有太多关于哪些选项可以保留数据。这对像我这样的初学者很有帮助。谢谢!
    • @sunskin 没问题。如果您在此过程中取得任何其他具体问题,请跟进。另外,如果你能接受我的回答,那就太棒了! :)
    • 请分享您对 AWS Cognito 的看法
    • 老实说,我从未使用过 AWS Cognito,因此我几乎没有使用过 AWS,但从其他经验中我可以告诉您,AWS Cognito 可以解决您的问题,但不能为您提供可定制性。如果您已经完成了后端开发,那么拥有一台服务器并编写自己的后端代码来完成 AWS Cognito 正在做的事情不会太困难。所以它真的是一个权衡。您需要可定制性或更轻松的部署。如果后者选择 Cognito。
    【解决方案2】:

    Google 正致力于将 Google Cloud Save 作为一种在 Android 应用上将数据保存到云端的简单方法。无需后端编程。

    它现在处于封闭测试阶段,所以这不是马上就很有帮助,但它可能很快就会向公众开放。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      • 2021-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多