building connected android apps
Embed Size (px)
DESCRIPTION
http://chrisrisner.com @ chrisrisner. Building Connected Android Apps. Chris Risner Technical Evangelist Microsoft. Let’s build an app! How Microsoft got here? Mobile Services Features and demos Win a prize Questions. What we’re going to talk about. Let’s build an app!. - PowerPoint PPT PresentationTRANSCRIPT

Building Connected Android AppsChris RisnerTechnical EvangelistMicrosoft
http://chrisrisner.com@chrisrisner

• Let’s build an app!• How Microsoft got here?• Mobile Services• Features and demos• Win a prize• Questions
What we’re going to talk about

Let’s build an app!

How Microsoft got here?

What we had
Cloud services
Storage Identity

What we neededCross Platform Features

What we made

Auth
What is Windows Azure Mobile Services?
Data
NotificationsServer 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.TodoitemAppY.Todoitem
Manage data inPortal, SQL PortalSQL Management StudioREST APICLI Tools

JSON to SQL type mappingsJSON Value T-SQL TypeNumeric values (integer, decimal, floating point)
Float
Boolean BitDateTime DateTimeOffset(3)String Nvarchar(max)

Server LogicAutomatic 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
notifications2. Send Registration ID to
Mobile Service3. Push from server side
scripts
Android(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 Google 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 Minutesby Hoursby DaysBy 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 ScaleDiagnosticsAPI 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

Auth
Summary
Data
NotificationsServer Logic
Scheduler
Logging & Diag
Scale

Win a JamBox
• Complete the Quick Start challenge
• 1 extra entry for showing use of Auth
• 3 extra entries for showing use of push
• Winner announced on 4/18
e-mail: [email protected]

The QuickStart Challenge
• Sign up for the free trial at www.windowsazure.com/android
• Complete the Mobile Services QuickStart
• Send me an image (including your account e-mail in the corner)
• Entries must be submitted by Thursday 1pm PST
• E-mail [email protected]

Useful ResourcesGet a Windows Azure Free Trial Accounthttp://www.windowsazure.com/
Learn moreFind videos, tutorials and more at https://www.windowsazure.com/android
Help with Mobile ServicesQ&A Forum: Windows Azure Mobile Services ForumFeature Rqst: Windows Azure Mobile Services UserVoiceFeedback: [email protected]: @chrisrisner
Presentations, demos, hands on labsWindows Azure Training Kit: Download here