Developing mobile apps to offer a Cloud first experience is key in today’s world. Yet developers still have to plan for the reality that devices connectivity is sometimes disrupted. How many times have you heard: “I don’t have enough bars, I can’t get the data!”?
To address this problem, Microsoft Azure recently announced the preview of the Offline functionality for Azure Mobile Services on Windows Store and Windows Phone apps. The Azure Mobile Services team just pushed an update extending the Offline feature across Android and iOS devices using Xamarin. Developers can now easily deliver an experience that is not disrupted when the device is no longer connected. Data is stored locally and synchronized with the Cloud once the connection is reestablished. Developers can also use Optimistic Concurrency along with the offline feature to detect and handle conflicting changes between the client and backend systems.
To achieve this, the Offline functionality uses the SQLitePCL open source project created by MS Open Tech, in which Xamarin is also a contributor. SQLite is a light relational database library designed for mobile platforms. MS Open Tech created this Portable Class Library that allows developers to utilize SQLite with the same code across .Net, Windows Store, Windows Phone, Android and iOS devices. The SQLitePCL project can be found on Codeplex and we are glad to work on it with the community. Xamarin was the first to add code to bring Xamarin.Android and Xamarin.iOS support, making it possible for the Azure Mobile Services Offline feature to add support for Android and iOS devices with Xamarin.Android and Xamarin.iOS!
Azure Mobile Services Offline will also support native iOS and Android development in the future, giving developers the benefit of selecting their development language of choice. In the meantime, you can learn more on the Azure Mobile Services Offline functionality reading the tutorials for Xamarin.iOS and Xamarin.Android and you can check out the SQLitePCL project by visiting the codeplex site.