【问题标题】:how to send data to server from android when no internet is available没有互联网可用时如何从android向服务器发送数据
【发布时间】:2014-10-14 11:45:42
【问题描述】:

我制作了一个将数据发送到我的 mysql 服务器的表单应用程序。一切都很好,但我有一个问题:如果我的应用程序没有互联网,我应该使用什么......如果我有互联网,用户输入数据并提交但是如果 5 或 10 分钟我没有互联网访问权限怎么办并且用户仍然发送数据。我会丢失这些数据还是有办法保存数据,当再次激活互联网时,所有保存的数据都会传输到我的 mysql 服务器...??

我听说过 JSON Parser,但我不知道它是如何工作的……

【问题讨论】:

  • 如果互联网不可用,则将其存储在 sharedpreference(适用于少量数据)或 DB(适用于大量数据)中,如果您有互联网连接,则发送存储的数据
  • 将数据保存在本地数据库中,并在互联网连接可用时同步......

标签: android android-activity android-asynctask


【解决方案1】:

在你的安卓应用中设置BroadcastReceiver

当您的用户提交一些数据并按下提交时,然后检查设备的互联网连接。如果互联网不可用,则将数据存储在本地数据库或共享首选项中(如果数据很小)。现在,当互联网可用时,您的广播接收器将被调用并检查本地数据库中的数据。如果存在,它必须像以前一样发送该数据。


  1. 检查互联网连接How to check internet access on Android? InetAddress never times out
  2. 用于创建广播​​接收器以检查网络可用性Broadcast receiver for checking internet connection in android app
  3. 处理数据库: Android SQLite Example
  4. 如果您想使用 sharedPreferences : How to use SharedPreferences in Android to store, fetch and edit values
  5. 用于向服务器发送数据: Sending POST data in Android

【讨论】:

  • 从 Android N 开始,Google 建议使用 JobScheduler,而不是 Broadcast 来执行后台任务(顺便说一下 android.net.conn.CONNECTIVITY_CHANGE 现在已弃用)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 2011-12-21
  • 2021-09-08
  • 1970-01-01
  • 2012-01-09
相关资源
最近更新 更多