Android app which works in online and offline mode? [closed]

偶尔善良 提交于 2019-12-03 08:16:12
  • You need to define two modes of your app online and offline
  • Monitor Network Connectivity events in your app to determine offline/online mode, You need to write BroadcastReciever for this.
  • In online mode Connect to your server and exchange whatever data that you need to do at that point.
  • Meanwhile in offline mode store the data persistently if needed

What you are asking is actually incredibly complicated.

I have spent a good year of my own time trying to solve this problem and have published my work in the SyncIt project which is at http://forbesmyester.github.io/SyncIt/ .

There is:

I suggest that you start reading about the local version control component and then move onto the connection monitoring component.

Use SQLite database. Save data in database when there is no internet. Then sync data with server when internet comes back.

http://www.androidhive.info/2011/11/android-sqlite-database-tutorial/

You can use SQLite database in your android application. At offline you can save every thing in you local database and when application come with online then you can sync your local database with server database.

For create SQLite local database in android application you can check the following sample codes (sample projects) in github

https://bitbucket.org/kavi707/grocery_items_app/src

Cheers...

Here you can not fetch data without internet. But it is possible to use old data. Once you are downloading data from internet store it into database. Here most people suggest SQLite database. My suggestion use anyone database (SQLite or SQLCipher) . After that before uploading your data just insert it into database and post from database. Because once network failure data will not be lost.

Broadcast Receiver:

This broadcast receiver is used to notify you the network changes. Once network is connected write your post code. Maybe here also possible to the network failure. But data still in database so it won't loss.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!