#XamarinDevDays
Maurizio Moriconi
@bugman79
CTO Mobilesoft
Connected & Disconnected 

Apps with Azure Mobile Apps
We Apps!
224M
downloads
a day
5
hours on 

phone a day
90%time on
apps
The average app user has 36 apps installed
on his or her phone.
Only 1/4 are used daily:
1/4 of apps are never used!
• Slow or laggy experience
• Crashes
• Not intuitive & bad user experience
• Features not as advertised
• Data not available when you need it
Bad App Experiences
Always connected?
http://opensignal.com/coverage-maps
http://opensignal.com/coverage-maps
What about a backend?
• On average, 54—62% of costs are associated
with infrastructure
• Hosting solutions
• System Administrator
• DB Administrator
• Backup
• Scaling
• Continuous Deployment
Reducing Mobile App Development Costs
Platform As A Service (PAAS)
Plenty of Options
Amazon Web
Services
Azure Mobile Apps IBM MobileFirst
Oracle Mobile Cloud
Firebase Couchbase
Realm
Parse
• Flexible
• Easy Apis/Tables
• App Service!
• C# SDKs available everywhere:
• C# iOS, Android, & Windows with Xamarin
• C# clients, written by C# developers (open source)
• C# backend with ASP.NET
• Node.js for backend!
• Continuous deployment / integration
Why Azure?
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
Xamarin Apps + Backend Services
Azure Mobile Apps
WindowsAndroid
Chrome
iOS
OSX
Kindle
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
Mobile + Server
New template on Visual Studio for Mac
• Node.js
• Easy authorization (CRUD based on REST
actions)
• Online Editor!
• Integrated on Client SDKs
Easy APIs
• Great for simple data storage
• Visual Editor to create tables or create tables
based on the app’s model!!
• CRUD
• Support Authorization/Authentication
• Trigger events on CRUD 

(ex. Send a push when an item is added to a table)
Easy Tables
• Allow end-users to create and modify data even when there is no
network access
• Sync works across multiple devices
• SQLite Database
• Client SDK available for Xamarin, alternatively use REST API
• Backend written in Node.js
Offline Sync
• Rolling your own account infrastructure is difficult and
time-consuming
• Secure your app with prebuilt authentication providers
• Facebook
• Twitter
• Google
• Microsoft
• Azure AD
• Anything OAuth 2
Authentication
• Easy-to-use, multiplatform scaled push
infrastructure that allows you to send push
notifications almost anywhere.
Push Notifications
• Sync files to Azure Storage, just like you did for
structured data.
File Sync
Let’s add a backend
Connected Services on Visual Studio for Mac
Create app from Azure Portal!!!
Lunch!
Maurizio
Moriconi
CTO Mobilesoft
maurizio.moriconi@mobilesoft.it @bugman79

Azure mobile services