【问题标题】:REST upload in background后台 REST 上传
【发布时间】:2014-02-10 05:49:02
【问题描述】:

我的 android 应用程序有一个 ContentProvider 并将数据(字符串)存储在 SQLite 表中 这些行需要 eb 发送到 Internet 服务器

我希望在远程主机可用时在后台上传这些数据(例如 WiFi 开启)

数据应尽快发送(当然,当网络可用时) 不干扰我的应用程序的用户界面 即使我的应用没有主焦点,它也应该发送(用户可能正在发送短信或使用相机)

每 5 秒可以将新数据添加到表中(出队列)

问:我应该使用后台服务来发送未发送的行吗?

使用“警报服务”似乎太频繁了,但我可能错了

电池寿命是我主要关心的问题,但其次是它需要尽快发送(或在互联网可用后不久)

Android 工作室 针对 API 17+

【问题讨论】:

    标签: android rest android-service android-sqlite android-contentprovider


    【解决方案1】:

    最好使用后台服务来处理请求并节省电池寿命。您可以检查连接状态并自己发送,并在没有连接时让服务处理,或者更好的是使用服务始终发送数据并让它决定何时发送。

    至于服务,看这个问题:How to be notified on wifi network status change?

    我们的想法是使用该答案中的代码在您的服务中实现广播接收器,以检测何时有可用连接。当该连接可用时,您可以发送数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-27
      • 2012-03-24
      • 2017-02-14
      相关资源
      最近更新 更多