Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Connected & Disconnected Apps with Xamarin

163 views

Published on

Slides for Xamarin+Azure presentation i did on Xamarin Dev Days Singapore.

Published in: Mobile
  • Be the first to comment

  • Be the first to like this

Connected & Disconnected Apps with Xamarin

  1. 1. #XamarinDevDays
  2. 2. We Apps! 189M downloads a day 200mins on phone 127mins in apps
  3. 3. The average app user has 36 apps installed on his or her phone.
  4. 4. Only 1/4 are used daily:
  5. 5. 1/4 of apps are never used!
  6. 6. http://opensignal.com/coverage-maps
  7. 7. Shared C# codebase • 100% native API access • High performance iOS C# UI Windows C# UIAndroid C# UI Shared C# Mobile C# Server Linux/Mono CoreCLRAzure Shared C# Client/Server
  8. 8. RESTAPI Offline sync Facebook Twitter Microsoft Google Azure Active Directory Azure Mobile Apps WindowsAndroid Chrome iOS OSX In-AppKindle Backend code SQL MongoTables O365 API Apps Offline Sync
  9. 9. Create a Mobile Service MobileService = new MobileServiceClient( "https://myapp.azurewebsites.net");
  10. 10. Create Tables IMobileServiceSyncTable<Store> table; public async Task Init() { const string path = "syncstore.db"; var db = new MobileServiceSQLiteStore(path); db.DefineTable<Store>(); } var handler = new MobileServiceSyncHandler(); await MobileService.SyncContext.InitializeAsync(db, h); table = MobileService.GetSyncTable<Store>();
  11. 11. Get and Modify Data public async Task<IEnumerable<Store>> GetStoresAsync() { await table.PullAsync("allStores", table.CreateQuery()); return await table.ToEnumerableAsync(); } public async Task<Store> AddStoreAsync (Store store) { await table.InsertAsync (store); await table.PullAsync("allStores", table.CreateQuery()); await MobileService.SyncContext.PushAsync(); return store; }
  12. 12. Let’s add a backend
  13. 13. So Much More
  14. 14. Shared C# codebase • 100% native API access • High performance iOS C# UI Windows C# UIAndroid C# UI Shared C# Mobile C# Server Linux/Mono CoreCLRAzure Shared C# Client/Server
  15. 15. Lunch! Rui Marinho Software Engineer - Xamarin Forms rumar@microsoft.com github.com/rmarinho @ruiespinho

×