Building a Node.js Backend in the Cloud for Android Apps

29
Nick Landry Senior Technical Evangelist – Microsoft [email protected] Blog: AgeofMobility.com @ActiveNick | github.com/ActiveNick Building a Node.js Mobile App Backend in the Cloud for Android Apps (for iOS, Windows & Web Apps too) DroidCon NYC 2015

Transcript of Building a Node.js Backend in the Cloud for Android Apps

Page 1: Building a Node.js Backend in the Cloud for Android Apps

Nick LandrySenior Technical Evangelist – Microsoft

[email protected]

Blog: AgeofMobility.com

@ActiveNick | github.com/ActiveNick

Building a Node.js Mobile App Backend

in the Cloud for Android Apps(for iOS, Windows & Web Apps too)

DroidCon NYC 2015

Page 2: Building a Node.js Backend in the Cloud for Android Apps
Page 3: Building a Node.js Backend in the Cloud for Android Apps
Page 4: Building a Node.js Backend in the Cloud for Android Apps

Microsoft

loves Android

devs

Xamarin

Build fully-native

Android apps in C#

Azure

Native SDKs to cloud-

enable your Java and

C# Android apps

“Project Astoria”

Bring your Java/C++

Android code to

Windows apps

Page 5: Building a Node.js Backend in the Cloud for Android Apps

Session Agenda

Page 6: Building a Node.js Backend in the Cloud for Android Apps

*not including those purely doing it for fun or learning purposes

Developer Economics | State of the Developer Nation Q1 2015 | © VisionMobile – http://vmob.me/DE1Q15

Page 7: Building a Node.js Backend in the Cloud for Android Apps
Page 8: Building a Node.js Backend in the Cloud for Android Apps

Clutch Survey | Cost to Build a Mobile App, Jan 2015 | © Clutch – http://bit.ly/1KTu2vj

Page 9: Building a Node.js Backend in the Cloud for Android Apps

Running Your Stuff in the Cloud

Microsoft

Azure

Page 10: Building a Node.js Backend in the Cloud for Android Apps

Free Software & Cloud Services

Are you…

• A tech entrepreneur?

• A software startup owner or partner?

• A developer moonlighter?

• An independent…• Software dev consultant?

• Mobile app developer?

• Game developer?

• Website designer/builder?

With BizSpark you get…

• MSDN Ultimate Sub.

• $750 per month in Azure credits (across 5 users)

• Visual Studio Enterprise

• Office 365 Subscription

• 11TB of Microsoft software

• All free!

Page 11: Building a Node.js Backend in the Cloud for Android Apps

BizSpark

BizSpark

3 years of

Microsoft software:

MSDN Ultimate

Subscriptions

$150 / month in

Azure cloud credits.

Office 365 Developer

Up to 5 users per

BizSpark account

per startup

Technical & product

support. Offers from

network partners

Marketing visibility.

Events. Ecosystem

Connections.

http://aka.ms/bizsparkapply

Page 12: Building a Node.js Backend in the Cloud for Android Apps

Cloud Computing Models

Page 13: Building a Node.js Backend in the Cloud for Android Apps

App Service - one integrated offering

API Apps

Easily build and consume APIs in the cloud

Web Apps

Web apps that scale with your business

Mobile Apps

Build Mobile apps for any device

LOGIC Apps

Automate business process across SaaS and on-premises

Page 14: Building a Node.js Backend in the Cloud for Android Apps

App Service Application Composition

Web Apps Mobile AppsLOGIC Apps

API Apps

Page 15: Building a Node.js Backend in the Cloud for Android Apps

Node.js Express

.NET Web API

SQL Table Storage

Blob Storage

WNS & MPNS

APNS GCM

Mongo DB

Notification Hubs

Source Control

Facebook Twitter Microsoft Google Azure Active Directory

Windows Store

iOS

Android

Xamarin

Phonegap

Sencha

Windows Phone

iOS

Android

HTML 5/JS

SDKs

REST A

PI

Hybrid Connections

Azure Mobile Services is now App Services

Page 16: Building a Node.js Backend in the Cloud for Android Apps

Action HTTP Verb URL Suffix

Create POST /TodoItem

Read GET /TodoItem?$filter=id%3D42

Update PATCH /TodoItem/id

Delete DELETE /TodoItem/id

Data Operations and their REST Equivalents

Base REST API Endpoint URL

https://mymobileservice.azure-mobile.net/tables/*

Odata protocol

LINQ support for

the C# SDK

A Basic table

Page 17: Building a Node.js Backend in the Cloud for Android Apps

Demo:

Azure Mobile Services

Page 18: Building a Node.js Backend in the Cloud for Android Apps

Push notification lifecycle

Registration at app launch1.

2.

Sending Notification1.

2.

Maintenance1.

Platform

Notification

Service

App back-end

Page 19: Building a Node.js Backend in the Cloud for Android Apps

Challenges of push notifications

Page 20: Building a Node.js Backend in the Cloud for Android Apps

Using Notification Hubs

One-time set up1.

Register1.

2.

Send Notification1.

2.

APNs WNS

Notification Hub

App back-end

iOS app Windows app

MPNS

GCM

ADM

Page 21: Building a Node.js Backend in the Cloud for Android Apps

Demo:

Push Notifications

Page 22: Building a Node.js Backend in the Cloud for Android Apps

Advantages of using Notification Hubs

Page 23: Building a Node.js Backend in the Cloud for Android Apps

Summary

Page 25: Building a Node.js Backend in the Cloud for Android Apps

Technical Resources for Cloud Devs

http://aka.ms/trymsazure

https://manage.windowsazure.com

https://portal.azure.com/

http://channel9.msdn.com/Shows/Cloud+Cover

http://friday.azure.com

http://aka.ms/azurechatrblog

http://www.visualstudio.com

Page 26: Building a Node.js Backend in the Cloud for Android Apps

Watch all sessions on demand at

http://channel9.msdn.com/events/build/2015

Page 27: Building a Node.js Backend in the Cloud for Android Apps

Online Microsoft training delivered by experts to help technologists continually learn

Hundreds of courses for developers, IT Pros, students, entrepreneurs and enthusiasts

11 different languages

Over 3M students registered

Build your own Learning Plan

All free!

http://www.microsoftvirtualacademy.com

Page 28: Building a Node.js Backend in the Cloud for Android Apps

Universal Windows App Developmentwith Cortana and the Speech SDK

Available for on-demand viewing now: http://aka.ms/CortanaMVA

Page 29: Building a Node.js Backend in the Cloud for Android Apps

Thank You!

Slides will be posted on SlideShare. Demos are in GitHub.

Slideshare: www.slideshare.net/ActiveNick

Blog: www.AgeofMobility.com

Twitter: @ActiveNick

Mobile Apps: www.bigbaldapps.com

LinkedIn: www.linkedin.com/in/activenick

GitHub: github.com/ActiveNick

Email: [email protected]