Building Connected iOS Apps Chris Risner Technical Evangelist Microsoft @chrisrisner.

Post on 31-Mar-2015

282 views 0 download

Tags:

transcript

Building Connected iOS Apps

Chris RisnerTechnical EvangelistMicrosoft

http://chrisrisner.com@chrisrisner

• How we got here• Mobile Services• Features and demos• Win a prize• Questions

What we’re going to talk about

How did we get here?

What we had

Cloud services

Storage Identity

What we neededCross Platform Features

What we made

What is Windows Azure Mobile Services?

Data

Notifications

Auth

Server Logic

Scheduler

Logging & Diag

Scale

Getting Started a backend for your mobile app in minutes Demo

Structured StorageStructured Storage with SQL DatabaseSame DB – multiple Mobile Services

AppX.Todoitem

AppY.Todoitem

Manage data inPortal, SQL Portal

SQL Management Studio

REST API

CLI Tools

REST API to SQL type mappings

JSON Value T-SQL Type

Numeric values (integer, decimal, floating point)

Float

Boolean Bit

DateTime DateTimeOffset(3)

String Nvarchar(max)

Server Logic

Automatic REST API generated for storageDynamic Schema on/offAbility to customize server logic that intercepts table requests

Server LogicSupported Modules + Globals

requestconsolepush.*tablesmssqlstatusCodesazurestore (pusher, sendgrid, twilio, etc)

mssql.query('select top 1 * from statusupdates', { success: function(results) { console.log(results);

} }

);

Server Logicadding server logic on CRUD

operations Demo

Push Notification Lifecycle Overview 1. Register for push

notifications

2. Register with your send token to Mobile Service

3. Push from server side scripts

iOS

(1)

(2)

(3)

(3)

Push NotificationsDemo

User Auth

Auth Data and ScriptsTable level permissions for each CRUD operation

EveryoneAnyone with the Application KeyOnly Authenticated UsersOnly Scripts and Admins

More granular control with server side scriptsuser.level: {admin, authenticated, anonymous}user.userId: id or undefined if not authenticated

Adding Authenticationintegrating with Twitter Demo

Command Line ToolsCreate servicesDelete servicesCreate (with auth options), update, delete, list tablesUpload, delete, download, list scriptsGet configuration

Using the CLI Demo

SchedulerExecute scripts on a Schedule

by Minutes

by Hours

by Days

By Months

Execute scripts on DemandExamples Periodic purge of old data

Poll and aggregate from 3rd party (Twitter, RSS, others)

Process/resize images

Schedule sending push notifications for a given time of day

Scheduling a taskAdding Todo Items Demo

Diagnostics, Logging and Scale

DiagnosticsAPI callsCPU TimeData Out

Loggingconsole.error(…)console.log(…)…

Scale - ComputeScale out instance countScale up VM size

Scale - StorageScale out mobile service tenant to dedicated SQL DBScale up SQL DB

Diagnostics, Logging, Scale

Demo

Pricing Example:

10 x Mobile Services on shared instances

100MB SQLDatabase

Unlimited data in

<165MB daily out

How?10 FREE mobile services on shared instanceIncludes 165MB/day of FREE data out from API calls Cost - All services sharing a 100MB DB is $5 USD / Month Use Pricing Calculator to Estimate your costs

=$5/ Month

Note: Free data out is per subscription, not per mobile service

Summary

Data

Notifications

Auth

Server Logic

Scheduler

Logging & Diag

Scale

Useful ResourcesGet a Windows Azure Free Trial Accounthttp://www.windowsazure.com/

Learn with Brent SimmonsFind videos, tutorials and more at https://www.windowsazure.com/ios

Help with Mobile ServicesQ&A Forum: Windows Azure Mobile Services ForumFeature Rqst: Windows Azure Mobile Services UserVoiceFeedback: mobileservices@microsoft.comTwitter: @chrisrisner

Presentations, demos, hands on labsWindows Azure Training Kit: Download here