![Page 1: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/1.jpg)
AUDITÓRIO 1
DESENVOLVIMENTO
Palestrante
Azure Mobile Services - Adicione Serviços para suas Aplicações Mobile
Vitor Meriat@vitormeriat
vitormeriat.com.br
![Page 2: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/2.jpg)
Agenda•Qual o porquê do MAMS•Arquitetura do MAMS•Demos, demos, demos ;)
![Page 3: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/3.jpg)
Dispositivos
2003 201
0 2015 202
0
50 bilhões
Cisco
![Page 4: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/4.jpg)
Uma pergunda para você…Qual dispositivo você usa?
![Page 5: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/5.jpg)
Diversos dispositivos, diversas plataformas
Experiência continuada
WindowsPhone 8
iOS AndroidWindows 8Windows 8 AndroidBrowser
Interoperável
![Page 6: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/6.jpg)
Azure Mobile Service
![Page 7: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/7.jpg)
Backend-as-a-Service
consumir
BaaSPlatform-as-a-Service
construir
PaaSInfrastructure-as-a-Service
servir
IaaSSoftware-as-a-Service
consumir
SaaS
Azure Mobile Services
![Page 8: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/8.jpg)
Um backend para todos os seus dispositivosSDKs para Windows, Windows Phone, iOS, Android, Cordova, e XamarinBackends suportados em .NET ou JavaScript
Armazene dados na nuvemUsando SQL Database ou outros backends como Azure Tables Storage e Mongo DB
Autentique seus usuáriosFacebook, Twitter, Microsoft Account, Google, e AAD
Push notificationsSuporte para cross-platform, baixa latência e notificações push em massa com os hubs de notificação
Azure Mobile Service
![Page 9: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/9.jpg)
Push Notifications
Data Storage
User Authentication
SQL Table Storage
Blob Storage
WNS & MPNS
APNS GCM
Mongo DB
Notification Hubs
Facebook Twitter Microsoft Google Azure Active Directory
Windows Store iOSAndroid XamarinPhonegapSencha
Windows PhoneiOSAndroidHTML 5/JS
SDKs
REST
API
Hybrid Connections
Arquitetura MAMS
Node.js Express
.NET Web API
Source Control
![Page 10: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/10.jpg)
Tipos de Backend
ASP.NET Web API
![Page 11: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/11.jpg)
Data Auth Push ToolingBased on Web APISupports various data stores:• Azure databases• SQL server on-prem/IaaS• Table Storage• MongoDB
• Facebook• Twitter• Google • Microsoft Account• AAD
Uses Notification Hubs integration for high-scale, cross-platform push
• Client NuGet• Runtime available on
NuGet
Visual Studio support:• Scaffolding• IntelliSense• Local F5• In-browser test client• Remote debugging• Publish via Web Deploy• Source control using TFS• View runtime logs
.NET Mobile Service Backend
![Page 12: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/12.jpg)
Modelo de dados (“brownfield”)
TableController
DomainManagerDTO
DTO
Mobile ServiceDevice
Model
AutoMapper
SQL Azure/BYOD
ExistingTables
SystemPropertiesTable
![Page 13: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/13.jpg)
Novo modelo de dados (“greenfield”)
TableController
DomainManagerDTO
DTO
Mobile ServiceDevice
SQL Database
BYOD
MongoDB
Table Storage
![Page 14: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/14.jpg)
Suporte ao modo Offline
Mobile ServiceTable ControllersDevice
SQLite
Explicit Push/PullCUD order preserved
Conflict resolution
SQL Database
BYOD
MongoDB
Table Storage
DTO Model
Mapping
![Page 15: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/15.jpg)
1. App registers with provider2. App gets token3. App sends token to backend4. Push requested5. Backend delivers push to provider6. Provider pushes to device
PlatformNotification
Service
App back-end
Push Notification – Ciclo de vida
![Page 16: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/16.jpg)
One-time set up1. Create a Notification Hub
Register2. The client app retrieves its current handle from the PNS3. Client app creates (or updates) a registration on the Notification Hub
with the current handle
Send Notification4. The app back-end sends a message to the Notification Hub5. Notification Hub pushes it to the PNS’
APNsWNS
Notification Hub
App back-end
iOS app Windows app
MPNS
GCM
ADM
Notification Hubs
![Page 17: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/17.jpg)
Notification Hubs
WindowsPhone 8
iOS AndroidWindows 8 Kindle
![Page 18: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/18.jpg)
Demonstração
![Page 19: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/19.jpg)
Documentation resourceReference: http://msdn.microsoft.com/en-us/library/jj554228.aspx
REST API for all platformsReference: http://msdn.microsoft.com/en-us/library/jj710108.aspx
ALL librarys Nuget package: https://nuget.org/packages/windowsazure.mobileservices GitHub: https://github.com/Azure/azure-mobile-services Client SDKs and Samples for Azure Mobile Services: http://azure.microsoft.com/en-us/develop/mobile/
Mobile Services APIs and SDKs
![Page 20: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/20.jpg)
AUDITÓRIO 1
DESENVOLVIMENTO
Palestrante
Obrigado!!!
@vitormeriat
vitormeriat.com.br
Vitor Meriat
![Page 21: Azure Summit BR 2014 - Mobile Services - Adicione Serviços para suas Aplicações Mobile](https://reader035.vdocuments.site/reader035/viewer/2022062710/559331ad1a28ab06648b476c/html5/thumbnails/21.jpg)
Obrigado por sua presença.