我正在开发一个Android应用程序,用户可以在其中看到群组列表并加入1-*
群组。在组内,成员和用户可以在他们加入的组内互相发送消息。将1个人发送给多个人并回复所有人。
我希望这能支持多种设备。所以,如果我加入一个团队,有人给我发了一条消息,我想在手机和平板电脑上看到这条消息。如果两者都安装了应用程序。
我希望用户能够在离线状态下查看群组详情。
我一直在做一些研究,并绘制图表,说明这是如何工作的。
如何使用远程数据库进行设置有哪些选择?
以下是我最终缩小的几个选项。
最好的方法是什么?目前在大多数系统中如何完成?我列出的是否有更多选择?
远程数据库:MySql
本地数据库:sqlite
我知道一些类似的问题here on SO,但我想知道这些选项中的任何一个或其他内容对我的具体情况是否最佳。主要是如何处理消息传递部分。
由于
答案 0 :(得分:2)
我认为选项1是处理此问题的一种非常标准的方法。
数据库版本#可以正常工作,但如果它经常更改,您将最终重新同步所有数据。如果你只是存储"上次修改日期"它可能会更好。在记录上,只下拉自上次同步以来发生变化的事情。这样你就可以返回一小组新记录。
您只想提取公共信息(组)和特定于用户的信息。远程数据库将包含所有内容,但本地数据库只包含与用户相关的数据。
我发现this tutorial介绍了如何使用远程服务器上的php实现API访问。您可以使用ORM或" Out of the Box"来简化此过程。 API解决方案。
我确信有更优雅的解决方案可以将本地Android数据库与远程同步,但这可能是非企业解决方案最实用的方法。