I am developing an mobile application which can be run on mobile devices (with OS like Android, iOS, WP7…). This application will get data from online database then store them to local database in device and I can do CRUD with data. There are three ideas:
-
I’ll create a webservice to handle with database on host and use some cross-platform framework to building an app then connect to webservice in order to get and put data to server. Issues:
- Which technology should I use to create webservice? (RESTful/SOAP…?)
- Which type of return data for easy to handle? (XML/JSON…?)
- How to sync between local database and database on host?
-
I’ll make an application for loading an external URL and build a website (with all of features that I need to work with database). Issues:
- iOS, Android, WP7… accept for loading external URL in applications?
- How to sync data like my first idea?
- Should I use single page application technology?
-
I’ll make an application using cross-platform framework and it will work with local database. I just handle syncing between local database and host database. Issue: which is the best database and best framework to do this?
Thank you
For synchronization, you can take a look at the open source project, OpenMobster’s Sync service. You can do all types of sync operations
Besides that, all modifications are automatically tracked and synced with the Cloud. You can have your app offline when network connection is down. It will track any changes and automatically in the background synchronize it with the cloud when the connection returns. Also, when new data is created in the Cloud, it is automatically synchronized with the local database using Push notifications.
Currently only native development is supported on Android and iOS. However, the next release which is 2.2-M8 (end of March) will support end-to-end integration with PhoneGap on Android and 2.2-M9 (end of April) will add iOS.
Support for PhoneGap will give you the flexibility to build the app using web technologies like HTML5, and JavaScript along with Sync for your local data using OpenMobster.
If you want to go pure native, then you still can use the Sync service and synchronize your local database with your remote database.
Let me know if you have more questions about the framework
Here is a link to the open source project: http://openmobster.googlecode.com
Good Luck!!!