A Guide to Simplicity: Creating Web Backends for Web and Mobile Clients

Post on 08-May-2015

342 views 3 download

description

Laurence Moroney's talk from Future Insights Live 2014 in Las Vegas: "Laurence Moroney, from Google, shows you how to build scalable cloud services for your mobile applications, then steps you through how to automatically create proxy classes for these services that run in browsers, on iOS devices and of course, on Android." Miss his talk? Join us at a future show: www.futureofmobile.com. Sign up for our newsletter at futureinsights.com and get 15% off your next conference.

transcript

Laurence Moroney @lmoroney

A guide to simplicity: Backends for Web and Mobile Clients

Agenda

Overview: Android Studio and Google Cloud Endpoints

Demo: adding a Cloud backend to an Android app

Future directions

Questions and answers

1

2

3

4

Agenda

Overview: Android Studio and Google Cloud Endpoints 1

2

3

4

Demo: adding a Cloud backend to an Android app in 15 minutes!

Future directions

Questions and answers

Download – Android Studio Early Access Preview: http://developer.android.com/sdk !

Android Studio

An open-source IDE built for Android

•  Based on IntelliJ IDEA with coding

assistance tools to help write Java code

•  Integrated visual and layout designer

•  Large number of bundled static code analysis tools (Lint) to help build quality apps

•  Integrated with Gradle to enable one build across dev environment (IDE, command line, CI server)

Google Cloud Endpoints

Extremely simple way to build server side logic on full power, management free Google App Engine platform

•  Uses App Engine’s auto-scaling and high-availability

•  Uses auto-generated, strongly typed, mobile optimized client libraries for Android, iOS and web.

•  Exposes standards based REST interfaces with built-in authorization

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Taking the plumbing out of API programming

Cloud Endpoints

Clients

Taking the complexity out of multi-client development

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Cloud Endpoints

Clients

Taking the risk out of API development

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Mobile Backend Running on Google App Engine Instances

Cloud Endpoints

Clients

Android Studio + Cloud Endpoints

Easiest way for mobile developers to connect to Google Cloud Platform

•  Create Google App Engine backends in

Android Studio

•  Generate Java-specific bindings for use in Android app

•  Benefit from as-you-type validations and quick-fixes when defining the backend API

•  Use App Engine-specific Gradle tooling that allows for a unified client/backend build

Easiest way to connect to Google Cloud Platform

Agenda

Overview: Android Studio and Google Cloud Endpoints 1

2

3

4

Demo: adding a Cloud backend to an Android app

Future directions

Questions and answers

Todo.txt: a simple to-do task management app

...which is loved by Play Store users

...and best of all, it’s open-sourced!

Images by Connie Zhou

Demo: adding a Google Cloud backend to Todo.txt!

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

pullFromRemote

pushToRemote storeTask().execute() query.get() transaction.commit()

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

storeTask().execute() query.get() transaction.commit()

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

storeTask().execute() query.get() transaction.commit()

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

storeTask().execute() query.get() transaction.commit()

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

storeTask().execute() query.get() transaction.commit()

getTask().execute()

Cloud Datastore

App Engine backend

Clo

ud E

ndpo

ints

Todo.txt app

Clie

nt L

ibra

ries

Demo Architecture

pullFromRemote

pushToRemote storeTask().execute() query.get() transaction.commit()

Agenda

Overview: Android Studio and Google Cloud Endpoints

Demo: adding a Cloud backend to an Android app in 15 minutes!

Future directions

1

2

3

4 Questions and answers

… but more details in Google I/O ‘14!

What’s coming next?

API Management Console

Improved getting started experience

Third party API clients access API Analytics

Cloud Endpoints

Support for GCE

Agenda

Overview: Android Studio and Google Cloud Endpoints

Demo: adding a Cloud backend to an Android app in 15 minutes!

Future directions

1

2

3

4 Questions and answers

Images by Connie Zhou

Google Cloud Platform

Android Studio

Google Cloud Endpoints

Google App Engine plug-in for Gradle

cloud.google.com

developer.android.com/sdk

cloud.google.com/endpoints

github.com/GoogleCloudPlatform/ gradle-appengine-plugin

Useful Links