web apps logic apps mobile apps app service api apps fabrikam kable 1. customer books appointment 2....
TRANSCRIPT
Donna MalayeriProgram Manager, Azure Mobile@lindydonna
Go Mobile! Login, sync data, and connect to enterprise APIs with Azure App Service
2-713
Intro to Azure App Service
What’s new in Mobile
Consumer apps
Enterprise apps and offline sync
Azure Mobile Apps
App Service: one integrated offering
API AppsEasily build and
consume APIs in the cloud
Web AppsWeb apps that scale with your business
Mobile AppsBuild Mobile apps
for any device
LOGIC AppsAutomate business
process across SaaS and on-premises
• Create web and mobile experiences that share data access and business logic
• Automate business processes with logic apps• Build custom APIs or consume connectors from
Marketplace• One common billing model for all of your App
Services
• Use a common Gateway to authenticate
App Service
WEB APPS LOGIC APPS MOBILE APPS
App Service
API APPS
Fabrikam Kable
1. Customer books appointment
2. Customer valet assigns a technician
3. Service Technician closes out work order on mobile device
WEB APPS LOGIC APPS MOBILE APPS
App Service
API APPS
WEB APPS LOGIC APPS MOBILE APPS
API APPS
http SQL
Customer site Customer Valet
Technician App
CustomerNotification
Customer App
• Customer valet uses Web App• Web App creates a new case in CRM• Logic app sends push notification to
customer
Fabrikam Kable
Build engaging apps
Sleeve Music uses Azure Mobile Services to help users discover music and follow artists
Social feeds feature uses the App Service Twitter connector to notify of artist events (concerts, etc.)
Images courtesy of Orange Tribes
Accelerate time to market3M built a parking tracker app in a weekend using Azure Mobile Services
App is offline sync enabled and uses Xamarin to work cross-platform
Skanska created a cross-device application that drew crucial construction and environmental data from the cloud in order to safeguard hospitals.
Revolutionize business
REST A
PI
Offline sync
Push Notifications
Data connections
User Authentication
Twitter Microsoft Google
Azure Active
Directory
Azure Mobile Apps
Windows
iOS
Android
HTML 5/JS
Xamarin
PhoneGap
Sencha
WindowsAndroid
Chrome
iOS OSX
In-AppKindle
Mobile SDKs
Backend code
SQL MongoTables O365 API Apps
Offline Sync
New hosting benefitsCourtesy of Azure Web Apps
Richer monitoring and alertingTraffic managerCustom CNAMEsVNET and VPNBackup and restoreMore VM size and instance optionsIn production A/B testingAuto load-balance
Share capacity across Web and MobileStaging slots• Validate changes in your staging
environment before publishing to production
More devops features• Support for BitBucket and Visual Studio
Online; seamless integration with GitHub
Web Jobs
• Mobile Services – in classic portal
• Mobile Apps – preview portal• When Mobile Apps is GA, will
have all the features of Mobile Services
Azure Mobile Apps vs. Azure Mobile ServicesWith Azure Mobile Apps, you have more control over your compute environment
All the hosting benefits of Web Apps at the same price
• Azure Mobile App is still in previewThis is your chance to influence the product!
• New features will go into Mobile Apps
• Azure Mobile Services is still supported
• After GA, we will offer a seamless migration experience
Your existing investments are safe
After General Availability, you choose when to migrate to Azure Mobile Apps
• Customer valet uses Web App• Web App creates a new case in CRM• Logic app sends push notification to
customer • Web Job synchronizes CRM data to a
custom SQL database
Fabrikam Kable
• Improve app responsiveness by caching server data locally on the device
• Make apps resilient against intermittent network connectivity • Allow end-users to create and modify data even when there is
no network access• Sync data across multiple devices • Detect and handle conflicts when the same record is modified
by more than one client
Why use mobile offline sync?
• Access data from Mobile Services tables even when app is offline
• Keep a local queue of Create, Update, Delete operations and synchronize with server when app is back online
• Detect conflicts when same item is changed both locally and on server
• Use soft delete to remove deleted records from client data stores
• Can use push notifications to trigger client sync
How it works
• Mobile App backend reads from SQL and writes through to CRM
• Mobile client SDK syncs SQLite db with Azure Mobile backend
Fabrikam Kable
▲, 1■, 2
▲, 1
▲, 1
●, 2
■, 2
Detect Conflicts with Optimistic Concurrency
Device 1Server
Device 2
▲, 1 ▲, 1
▲, 1 ▲, 1
▲, 1
■, 2
▲, 1
Create
Fetch
Update
Update
■, 2 ✘
Register device handle at app launch1. Client app retrieves handle from Platform Notification Service (PNS)2. Client app sends handle to your custom backend
Send Notification3. Your backend connects to PNS and requests push
Your code has to manage scaleYour code has to map between logical users and device handles
4. PNS pushes notification to device
Maintain backend device handles5. Your code must delete expired handles when PNS rejects them6. Your code must map between logical users and device handles
Push Notifications 101
PlatformNotification
Service
App back-end
Client app
1
23
4
5
6
Register device handle at app launch1. Client app retrieves handle from Platform Notification Service2. Client sends handle to your backend
Backend registers with Notification Hub using tags to represent logical users and groups
Send Notification3. Backend sends request to Notification Hub using a tag
Notification Hub manages scaleNotification Hub maps logical users/groups to device handles
4. Notification Hub delivers notifications to matching devices via PNS
Maintain backend device handles5. Notification Hub deletes expired handles when PNS rejects
them6. Notification Hub maintains mapping between logical
users/groups and device handles
Azure Notification Hubs
PNS
App back-end
Client app
1
2
2
4
5
6
NotificationHub
3
4
• Lightweight and composableEliminates burdens of database-to-database sync
• Works with a variety of server data storesSQL, Azure Tables, Mongo, Dynamics CRM, Salesforce, etc.
• Cross-platform client SDKsWindows Universal, Xamarin, iOS, Android
Summary: Azure Mobile offline sync
• Supports both “primarily online” and “occasionally connected” scenariosExplicit push and pull leaves control to the developer
• Flexible and powerfulSupports custom local storage layersDetect and handle conflicts on server or client
Summary: Azure Mobile offline sync
• Azure Mobile Apps = Mobile Services + App Service
• Harness the full power of Azure Web Apps for your mobile backend
• Connect to API Apps, SaaS connectors
Summary
Session• 2-764 When Bad Things Happen to Good Apps: Troubleshooting
Applications• Friday 2-3pm
Watch these recordings:2-628 Azure App Service Architecture2-633 Running Web and Mobile Apps on Azure App Service2-760 Azure API apps for Web, Mobile and Logic Apps2-620 Agile Development in Practice: Tips and Tricks for Modernized Dev
Related
• Try Azure Mobile App for free!No credit card required!Go to aka.ms/TryMobileApp
• Learn moreGo to aka.ms/AppServiceMobile
Tweet @azuremobile @lindydonna
Try it now
Improve your skills by enrolling in our free cloud development courses at the Microsoft Virtual Academy.
Try Microsoft Azure for free and deploy your first cloud solution in under 5 minutes!
Easily build web and mobile apps for any platform with AzureAppService for free.
Resources