我正在开发一个基于表单的应用程序,我希望在离线模式和在线模式下存储表单。当用户离线时,它会自动将数据发送到服务器,只要它将获得互联网连接。
我已经实现并测试了我的api,但如何根据互联网连接同步数据是在我的头上。谁能提出适当的解决办法?
是不是跟syncadapter有关?如果我将使用云计算,即DBaaS数据库,这对我来说是一个好的选择吗?
请转发给我一些代码片段
Thanks in advance
您可以使用Cloudant。
首先在设备上使用sync-android将数据存储在本地。
然后你需要能够检测设备的连接状态。使用Android的ConnectivityManager来检测设备何时连接到wifi或使用getNetworkInfo的蜂窝网络。
当您的设备连接到wifi时,启动到Cloudant服务器的复制。
您可以查看下面的链接查看网络连接状态。
android应用中用于检查网络连接的广播接收器
当你有一个接收互联网连接的广播接收器时,启动一个上传数据到服务器的意图。对于这个目的,volley是一个很好的库。
https://developer.android.com/training/volley/simple.html