44
Migrating to Mobile GIS Tips for Success Andy Gup

Migrating from Desktop to Mobile

Embed Size (px)

DESCRIPTION

Presented at GIS in the Rockies 2012. This presentation looks at some of the challenges with migrating from desktop web applications to smartphones and tablets. While it uses mapping and spatial examples it applies to anyone looking at migrating to mobile. You'll walk away with some technical suggestions on how to address these challenges.

Citation preview

Page 1: Migrating from Desktop to Mobile

Migrating to Mobile GISTips for Success

Andy Gup

Page 2: Migrating from Desktop to Mobile

Agenda

Walk away with 6 migration tips

Differences between desktop and mobile

3 Approaches

Page 3: Migrating from Desktop to Mobile

Who am I?

Andy Gup, Esri

Tech Lead for Web APIs and Android

Esri Developer Network

[email protected]

http://blog.andygup.net

@agup

Page 4: Migrating from Desktop to Mobile

Who are you?

Page 5: Migrating from Desktop to Mobile

No longer just building for one screen size

1920x1080

Page 6: Migrating from Desktop to Mobile

Your Choices

Web app+

Native mobile app

Web app+

Web mobile app(a.k.a Hybrid)

Web app only(a.k.a Responsive)

1.

2.

3.

Page 7: Migrating from Desktop to Mobile

Development Skills (a generalization)

Fewer Skills More Skills

DesktopHTML + JavaScript

Hybrid NativeMobile HTML + JavaScript

Page 8: Migrating from Desktop to Mobile

1991 - HTML

1995 – HTML 2

1996 – CSS 1 +

JavaScript v

1

1997 – HTML 4

1998 – CSS 2

2002 – Tableless W

eb Desig

n

2005 – AJAX

How mature?

2008 – HTML5

(1st d

raft)

1991 2012

Sources: html5rocks.com, Wikipedia, W3C

iPhone 1June 2007

Android v1.5April, 2009

X X

Page 9: Migrating from Desktop to Mobile

if(device == mobile){ difference1: expectations, difference2: look_and_feel, difference3: capabilities, difference4: performance}

Page 10: Migrating from Desktop to Mobile

Wait…how do I pan and zoom the map??

Page 11: Migrating from Desktop to Mobile

Hmmm…how many map layers do I load?

VS.

1 GB RAM 16 GB RAM

Page 12: Migrating from Desktop to Mobile

How come my map loads so slooow?

VS.

Mostly connected Always connected

Page 13: Migrating from Desktop to Mobile

My survey crews use GPS heavily…

VS.

Limited battery Unlimited power

Page 14: Migrating from Desktop to Mobile

Desktop Web App

One size fits all

Works with most desktop browsers

Works across Windows, Mac, Linux

Mobile web did not exist

No GPS, camera, SD card

Page 15: Migrating from Desktop to Mobile

Using desktop app on smartphone

Page 16: Migrating from Desktop to Mobile

Native Mobile App

Targeted only to specific devices

Targeted only to specific OS versions

Direct access to GPS, camera, SD Card

Requires specialized development skills

Page 17: Migrating from Desktop to Mobile

Native devices

!= !=

Page 18: Migrating from Desktop to Mobile

Native devices

ArcGIS SDK for Android

ArcGIS SDK for iOS

ArcGIS SDK for Windows Phone

Page 19: Migrating from Desktop to Mobile

Native devices

Java

Many OS versions

Many different manufacturers

Many different screen types

OEM variations in OS

IDE = Eclipse

C#

Limited OS versions

Limited number of devices

IDE = Visual Studio

Objective C

Limited OS versions

Very limited number of devices

IDE = Xcode

Page 20: Migrating from Desktop to Mobile

Responsive Web App (circa >= 2011)

Tailors content and view based on browser type

No direct access to GPS, camera, SD card

Works with many different desktop and mobile browsers

Works across Windows, Mac, Linux

Page 21: Migrating from Desktop to Mobile

Responsive Web App

Page 22: Migrating from Desktop to Mobile

ArcGIS API for JavaScript - Compact

http://esriurl.com/compactJS

<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.1compact">

Page 23: Migrating from Desktop to Mobile

arcgis.com

1440 x 900 480 x 800 hdpi

Page 24: Migrating from Desktop to Mobile

Portrait Landscape

Web app that looks native

Page 25: Migrating from Desktop to Mobile

The challengeMobile JavaScript frameworks…

Page 26: Migrating from Desktop to Mobile

Hybrid App

Looks and acts like a native app

Re-uses existing web content

Works across different devices

Access to GPS, camera, SD Card

Requires fewer specialized skills than native

Page 27: Migrating from Desktop to Mobile

+

Android SDKJava Project

ArcGIS JavaScript +

Mobile JavaScriptFramework

=

Hybrid App

Page 28: Migrating from Desktop to Mobile

Hybrid Web Apps

Page 29: Migrating from Desktop to Mobile

Examples of Hybrid Web Apps

http://www.phonegap.com/app

???

Page 30: Migrating from Desktop to Mobile

Hybrid Web App Platforms

Page 31: Migrating from Desktop to Mobile

Migration suggestion #1

Start prototyping today

Page 32: Migrating from Desktop to Mobile

Migration suggestion #2

Analyze existing usage

Page 33: Migrating from Desktop to Mobile

Mobile usage stats for my website?

Web Server logs

Web analytic tools

Page 34: Migrating from Desktop to Mobile

Sample web-site stats from esri.com

Page 35: Migrating from Desktop to Mobile

Migration suggestion #3

Re-evaluate ALL use cases and workflows

?

? ?

?

?

Page 36: Migrating from Desktop to Mobile

Migration suggestion #4

Expect to re-write code

When in doubt, discard and re-write

Page 37: Migrating from Desktop to Mobile

Migration suggestion #5

Buy as many test devices as possible

Page 38: Migrating from Desktop to Mobile

Migration suggestion #6

Dig deep into browser differences

Page 39: Migrating from Desktop to Mobile

Understand browsers

Page 40: Migrating from Desktop to Mobile

caniuse.com

Page 41: Migrating from Desktop to Mobile

DemoPutting it all together

Page 42: Migrating from Desktop to Mobile
Page 43: Migrating from Desktop to Mobile

Andy Gup, Esri

Tech Lead for Web APIs and Android

Esri Developer Network

[email protected]

http://blog.andygup.net

@agup

Page 44: Migrating from Desktop to Mobile