Microsoft Ignite 2015 4/16/2017 4:11 PM © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Go Mobile! Login, Sync Data, and Connect to Enterprise APIs with Azure App Service Donna Malayeri Program Manager, Azure Mobile @lindydonna
Objectives Intro to Azure App Service New enterprise features in Mobile Apps Mobile Apps + the power of Web Apps Offline Sync on mobile clients
Azure App Service: one integrated offering Web Apps Web apps that scale with your business Mobile Apps Build mobile backends for any device Azure Websites is now called Azure Web Apps Azure Mobile Apps = Mobile Services “v2” Logic Apps Automate business process across SaaS and on-premises API Apps Easily build and consume APIs in the cloud
Azure App Service Automate business processes with logic apps Build custom APIs or consume connectors from Marketplace Create web and mobile experiences that share data access and business logic Pool compute resources across your App Services using an App Service Plan
App Service Sessions Upcoming Watch this recording BRK1450 Microsoft Azure Logic Apps Logic apps capabilities, demos, architecture Thursday 9am BRK3719 Azure API Apps: API Backends for Enterprise Web, Mobile, and Logic Apps App Service gateway, single sign-on, API connectors Thursday 1:30pm BRK3715 Running Enterprise Web and Mobile Apps on Azure App Service App Service Environments, a new dedicated compute option Friday 12:30pm Watch this recording BRK3707 Agile Development in Practice: Tips and Tricks for Modernized Dev DevOps features in Azure Web Apps
How do people use Azure Mobile Services today?
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 market 3M built a parking tracker app in a weekend using Azure Mobile Services App is offline sync enabled and uses Xamarin to work cross-platform
Revolutionize business Skanska created a cross-device application that drew crucial construction and environmental data from the cloud in order to safeguard hospitals.
And now, a story
Online appointment booking! Push notifications and SMS alerts! 10 minute service window!
Fabrikam Kable Customer books appointment Build 2015 4/16/2017 4:11 PM Fabrikam Kable Customer books appointment Customer Valet assigns a technician using Web App Web App creates a new case in CRM Logic App sends push notification to customer … © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Demo
Technician client app Later, Service Technician closes out work order on mobile device
Technician App Backend Customer Notifications Web Apps Mobile Apps LOGIC Apps Customer Valet Web App Customer App Backend Technician App Backend Customer Notifications Api Apps http SQL
What’s new in Azure Mobile Apps?
Azure Active Directory Azure Mobile Apps Azure Mobile Services Offline Sync Data connections Backend code .NET Node.js SQL Mongo Tables O365 API Apps Web App Mobile SDKs User Authentication REST API Windows iOS Android HTML 5/JS Xamarin PhoneGap Sencha Facebook Twitter Microsoft Google Azure Active Directory Offline sync Push Notifications Windows Android Chrome iOS OSX In-App Kindle
New hosting benefits Courtesy of Azure Web Apps (aka Azure Websites) Richer monitoring and alerting Traffic manager Custom CNAMEs VNET and VPN Backup and restore More VM size and instance options In production A/B testing Auto load-balance Share capacity across Web and Mobile Staging 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
App Service Platform View (Runtime) API Apps Web Apps Mobile Apps Logic Apps
Demo Azure Preview Portal
Azure Mobile Apps vs. Azure Mobile Services With Azure Mobile Apps, you have more control over your compute environment All the hosting benefits of Web Apps at the same price Mobile Services – in classic portal Mobile Apps – preview portal When Mobile Apps is GA, will have all the features of Mobile Services
Your existing investments are safe Azure Mobile App is still in preview This is your chance to influence the product! New features will go into Mobile Apps Azure Mobile Services is still fully supported After GA, we will offer a seamless migration experience After General Availability, you choose when to migrate to Azure Mobile Apps
Fabrikam Kable Mobile Backend
Fabrikam Kable Customer Valet assigns a technician using Web App Build 2015 4/16/2017 4:11 PM Fabrikam Kable Customer Valet assigns a technician using 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 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Fabrikam Kable Mobile App backend reads from SQL and writes through to CRM
Demo Mobile App backend code
Azure Mobile Offline data sync
The best mobile apps handle network interruptions gracefully.
Adding offline sync to an app is usually hard Adding offline sync to an app is usually hard. With Azure Mobile, it’s easy.
Why use mobile offline sync? 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
How it works 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
Fabrikam Kable Mobile App backend reads from SQL and writes through to CRM Mobile client SDK syncs SQLite db with Azure Mobile backend Note: Client apps do not communicate directly with backend data source
Demo Field Engineer client app
Handle client sync conflicts conflict resolution Server conflict resolution
Detect Conflicts with Optimistic Concurrency Build 2014 4/16/2017 Detect Conflicts with Optimistic Concurrency Server Device 1 Device 2 Create ▲, 1 ▲, 1 Fetch ▲, 1 ▲, 1 ▲, 1 Update ▲, 1 ▲, 1 ■, 2 ■, 2 Update ✘ ●, 2 ■, 2 ■, 2 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Demo Backend conflict handling
Summary: Azure Mobile offline sync Lightweight and composable Eliminates burdens of database-to-database sync Works with a variety of server data stores SQL, Azure Tables, Mongo, Dynamics CRM, Salesforce, etc. Multi-platform client SDKs Windows Universal, Xamarin, iOS, Android
Summary: Azure Mobile offline sync Supports both “primarily online” and “occasionally connected” scenarios Explicit push and pull leaves control to the developer Flexible and powerful Supports custom local storage layers Detect and handle conflicts on server or client
Solution Accelerators and Prebuilt Apps Field Engineer – Telco / Utilities / Energy Sales Assistant – Point Of Sale, Retail
Announcing: Dynamics CRM Connector See Dynamics CRM theatre sessions for a demo! Enables Dynamics CRM 3rd party apps to work offline and sync Enables apps connect to Dynamics CRM & federate with other data sources Engage users via push notifications based on Dynamics data change events Available for Mobile Services (GA) and App Service Mobile Apps (Preview)
New hosting option: App Service Environments New Premium Tier Feature Dedicated compute resources Increased Scaling Options Directly created in a Virtual Network To learn more, attend BRK3715 Running Enterprise Web and Mobile Apps on Azure App Service Friday 12:30pm
Announcing: Xamarin Library for Azure Storage Preview library now available! Go to aka.ms/AzureStorageXamarin to learn more Coming soon: Azure Mobile sample: offline sync with SQL and Azure Blob Storage
Summary Azure Mobile Apps = Mobile Services + App Service Connect to API Apps and SaaS connectors Harness the full power of Azure Web Apps for your mobile backend Easily build sync-enabled mobile client apps
Related Upcoming Watch this recording BRK1450 Microsoft Azure Logic Apps Logic apps capabilities, demos, architecture Thursday 9am BRK3719 Azure API Apps: API Backends for Enterprise Web, Mobile, and Logic Apps App Service gateway, single sign-on, API connectors Thursday 1:30pm BRK3715 Running Enterprise Web and Mobile Apps on Azure App Service App Service Environments, a new dedicated compute option Friday 12:30pm Watch this recording BRK3707 Agile Development in Practice: Tips and Tricks for Modernized Dev DevOps features in Azure Web Apps
Try it now Try Azure Mobile App for free! Learn more No credit card required! Go to aka.ms/TryMobileApp Learn more Go to aka.ms/AppServiceMobile Tweet @azuremobile @lindydonna
Please evaluate this session 4/16/2017 4:11 PM Please evaluate this session Your feedback is important to us! Visit Myignite at http://myignite.microsoft.com or download and use the Ignite Mobile App with the QR code above. © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
4/16/2017 4:11 PM © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.