Best approach for mobile architecture with remote and local data

2 posts, 0 answers
  1. fenix2222
    fenix2222 avatar
    13 posts
    Member since:
    Sep 2008

    Posted 24 Feb 2013 Link to this post

    Hi we are planning to create iPhone and iPad apps using Icenium. We will have a backend remote database exposed via OData services. I know kendo UI works quite well with odata sources. From what I have read Icenium provides WebSQL and Sqlite plugins. Are there any cons of using sqllite compared to websql? Also, I have never designed mobile app before, but I understand that I would need to cache some data locally? What is the best approach for it? I envisage it like this:

    - When app first loads it downloads all the data from remote DB and stores it in local DB
    - When app performs any CRUD operations, it pushes data to remote DB and stores it locally as well.
    - When app starts next time, it passes last updated date (probably date it was run last) to the remote DB, and remote DB passes back only data that has been changed since
    the date passed.

    Is this right way of doing it? My biggest concern is that database can still go out of sync, and also I am not sure how good Sqlite performance is on mobile device.  Also should I still have some background thread that sync data constantly every so often?

  2. Stefan Dobrev
    Admin
    Stefan Dobrev avatar
    790 posts

    Posted 26 Feb 2013 Link to this post

    Hi Igor,

    There are a couple of benefits of using the SQLite plugin - the main one is the 5MB limitation of the WebSQL. You can read more about its features here.

    Regarding the local caching you can check this blog post that contains some highlights how this can be achieved. You can even implement a Kendo DataSource that uses WebSQL for local data persistence - here is a demo with full CRUD example.

    Hope this helps,
    Stefan Dobrev
    the Telerik team

    Share feedback and vote for features on our Feedback Portal.
    Want some Kendo UI online training - head over to Pluralsight.
Back to Top