我有一个android应用程序,它维护着一个不同地理位置的本地SQLite数据库。Android同步用户之间的数据
现在,我想该数据库连接到“云”来完成以下任务:
一切的初始下载,当应用程序首次安装(或收费)
本地添加的新位置应自动上传到云端
在线数据库应偶尔检查新的在线条目并下载到本地数据库。
我在完成这个过程中遇到了很多问题。
第一个只是怎么办。我认为它涉及contentProviders和syncProviders,但我不确定如何。我是否需要在contentProvider中复制我的SQLite数据库,或者我是否在底层设计中直接使用数据库而不是通过自定义内容提供程序发生错误?
其次,位置记录不能简单地从联机数据库上下复制,因为它们将具有冲突的ID号。我有几个关系表,比如将tag-id与location-id相关联的“tags”。我的标签ID不一定会与其他用户的标签ID匹配。与位置ID相同。所以需要在转移中涉及一些逻辑。 在哪里/如何妥善处理?这是contentResolver的角色吗? (不知道那是真的)
第三,在2个用户同时添加相同位置(可能具有不同的描述和细节)的情况下会发生什么? 这些记录是否有合并的最佳做法?
最后,构建/托管在线组件的最简单方法是什么?这部分对我来说都是新手。我可以将主数据库放在公共保管箱文件夹中,还是需要从头开始构建自定义的php网络应用程序?还是有预先打包的解决方案,可以使这部分更容易?
我看到3年前问过的问题,并有一个可接受的答案。您能否详细说明您需要获得更多关于赏金的信息? – RocketRandom