我是Android的新手,并制作了一个应用程序,可以将数据提取并发布到服务器,并在在线模式下正常工作。但是,当没有互联网连接或网络故障时,我也想让它在离线模式下工作。当网络可用时,它还应该对服务器数据库进行更改(更新)。我做了很多R& D但没有得到有用的信息。
请有人指导我一些有用的步骤,示例代码(如果可能)或任何链接以使应用程序处于离线模式。
答案 0 :(得分:9)
答案 1 :(得分:5)
你所问的实际上是非常复杂的。
我花了很多时间尝试解决这个问题,并在http://forbesmyester.github.io/SyncIt/的SyncIt项目中发布了我的工作。
有:
我建议您开始阅读本地版本控制组件,然后转到连接监视组件。
答案 2 :(得分:3)
使用SQLite数据库。没有互联网时,将数据保存在数据库中。然后在互联网回来时与服务器同步数据。
http://www.androidhive.info/2011/11/android-sqlite-database-tutorial/
答案 3 :(得分:2)
您可以在Android应用程序中使用SQLite数据库。在离线状态下,您可以保存本地数据库中的所有内容,当应用程序在线时,您可以将本地数据库与服务器数据库同步。
对于在Android应用程序中创建SQLite本地数据库,您可以在github中检查以下示例代码(示例项目)
https://bitbucket.org/kavi707/grocery_items_app/src
干杯...
答案 4 :(得分:1)
这里没有互联网就无法获取数据。但是可以使用旧数据。从Internet下载数据后,将其存储到数据库中。
大多数人建议SQLite database
。我的建议使用任何数据库(SQLite or SQLCipher
)。在上传数据之前,只需将其插入数据库并从数据库发布。因为一旦网络故障数据不会丢失。
Broadcast Receiver
:
此广播接收器用于通知您网络更改。连接网络后写下您的邮政编码。也许这里也可能出现网络故障。但数据仍在数据库中,因此不会丢失。