【发布时间】:2014-06-20 19:49:57
【问题描述】:
我正在制作一个应用程序,我有一些问题想问一下我的解决方案是否好。
所以基本上我使用Service,我从MainActivity 开始使用Intent。 Service 有一个无限循环,其中有一个Thread。 Sleep(60000) 所以它只尝试每 60 秒更新一次。 Service 向我的 JSON 包装 PHP 脚本发出 HTTP 请求,然后它从我的远程 MySQL 数据库返回数据,然后 Service 解析数据,之后它与 ContentProvider 通信并使用其 bulkInsert()替换而不是插入,以便在需要将新数据存储在本地 SQLiteDatabase 时替换旧行。我认为除了 JSON 数据之外,我还必须获取有效 id 的列表,以便它知道删除主数据库中不再存在的行,我还发送了上次更新的时间,所以我只得到返回的新行而不是整个数据库。重点是在远程服务器上拥有一个主数据库,并有多个设备与之同步。
所以接下来我需要Activities 才能使用使用ContentProvider 的加载器从本地数据库中查询信息。
现在我想知道更新数据库并同时查询它是否会出现问题。 ContentProvider 会解决这个问题吗?
另外我还需要同步一个图片文件夹,我该怎么做呢?
是否有任何我应该注意的同步问题?
有没有更好的方法来实现我想要的?
【问题讨论】:
-
这听起来像是一次有很多问题,请尝试缩小您的问题范围或提出多个问题。
-
嗯,这听起来可能有很多问题,但主要方面是同步。如何将本地 SQLiteDatabase 与远程 MySQL 同步?