【问题标题】:Synchronize SQlite with MySql [closed]将 SQlite 与 MySql 同步 [关闭]
【发布时间】:2014-11-26 09:34:03
【问题描述】:

我想在 Android 上将我的 sqlite 与我的 mysql database 同步。 我想输入mysql - 我的android应用程序应该每隔n秒检查一次mysql中是否有新条目,如果是,那么它应该replace/updatesqlite database具有与mysql。

在我开始尝试之前,我想知道我可以选择哪些方法和方法来解决这个问题。也许你有一些线索。

【问题讨论】:

    标签: android mysql sqlite


    【解决方案1】:

    Service 进行检查会耗尽您的电池并消耗资源,因为您每次都会从您的设备检查 MySql 数据库中是否发生了更新。您不认为只在执行 MySql 数据库中的更新时(并且自动)通知设备会更好。

    Ever heard of GCM?

    每当您在 MySql 中执行更新时,只需将相同的通知发送到 Android 设备并调用 API 从服务器获取数据

    【讨论】:

    • 是的,那会更好,但我该怎么做...?因为我的 mysql 与 android 应用程序没有任何关系 - 应用程序如何从 mysql 获得信号,表明 mysql 发生了变化?
    • 你需要实现服务器功能
    • 嘿,我正在关注您链接中的教程 - 但是 GCM 的使用是免费的吗?
    • 似乎是免费的......谢谢你我认为你的想法是一个很好的选择 - 因为只有在必要时才会执行操作......谢谢
    • 我按照教程进行操作,但是注册不起作用当我创建数据库条目“multicast_id”时出现错误:.......“成功”:0,“失败” ":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}
    【解决方案2】:

    你应该使用后台服务并且你应该启动一个永不结束的线程。并且在该线程中,如果您的数据库有可用的更新,那么您可以连续点击对 mysql 数据库的请求,而不是将该更新插入到您的 sqlite 数据库中。您还可以通过自动递增的主键跟踪新插入或删除的条目。

    【讨论】:

    • hmm 是的,这也是我的想法......正如你所说,我正在考虑我的后台服务,它每隔 n 秒将 mysql 数据库与 sqlite 数据库进行比较......好的,谢谢你
    猜你喜欢
    • 2015-05-29
    • 2018-01-17
    • 1970-01-01
    • 2013-07-10
    • 2013-11-12
    • 2014-12-29
    • 2010-12-07
    • 1970-01-01
    • 2011-04-22
    相关资源
    最近更新 更多