我正在创建一个应用程序的高级版本,我已经发布了免费的Lite版本。我想将Lite版本的数据传输到Premium版本,或者让两个版本访问同一个数据库。 Android, two apps one database?帮助回答了以后的问题。如果数据库是在Lite版本中创建的,那么当用户安装Premium版本时会发生什么?他们是否必须保持Lite版本以保存数据?另一方面,我可以在独立于任一版本但仍然是沙盒的位置创建数据库吗?最终,我希望能够允许用户在安装Premium版本后删除Lite版本,但仍然保持所有数据的完整性。我该怎么做呢?或者我是否坚持让我的用户即使在升级到高级版之后仍然安装了两个版本?
答案 0 :(得分:1)
我建议至少要查看CouchDB来托管数据。您将数据创建为文档(使用JSON),然后创建包含文档的数据库。
此外,您还可以创建有关数据的观看次数 - http://wiki.apache.org/couchdb/HTTP_view_API。您可以将参数传递给视图以过滤数据等。
您可以使用Cloudant(https://cloudant.com/)或IrisCouch(http://www.iriscouch.com/)创建示例CouchDB。我知道Cloudant支持HTTP身份验证,因此您可以通过Android设备将所有呼叫看起来像这样:
http://user:password@yourdomain.com/database
另一个选择是查看TouchDB,它为您处理来自CouchDB的复制。 https://github.com/couchbaselabs/TouchDB-Android请记住,项目现在有点落后,所以我认为它的生产准备就绪,但今年他们的重点是它,所以应该很快就会出现。
只需使用身份验证建立共享数据库。然后你可以托管相同的数据,并严格在UI中保留精简版和高级版。