20
AppStudio for ArcGIS Building Native Cross-Platform Apps Sathya Prasad [email protected] | @sathyaprasad

AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

  • Upload
    others

  • View
    41

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

AppStudio for ArcGISBuilding Native Cross-Platform Apps

Sathya Prasad

[email protected] | @sathyaprasad

Page 2: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

Introducing

AppStudiofor ArcGIS

Easiest way to create cross-platform native

GIS/Mapping/Location applications

Page 3: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

What is AppStudio for ArcGIS?

• A new platform to build focused cross-platform apps for devices and

systems

• Targeted for both Developers and Non-Developers alike

• No development skills required to get started

• Choose from a gallery of application templates or build your own

• Configure and add your own assets (Branding)

• Deploy to app stores or in your organization

Page 4: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

ioS

Android

Linux

Windows

Mac

One App

AppStudio for ArcGISBuild one App, deploy across multiple

platforms and form factors

Page 5: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

AppStudio for ArcGISValue for Developers

Value for Organizations

Value for Partners

• ArcGIS Runtime API

• Leverages Portal, Server and Online

• Developer Productivity Tools

• Quick start templates

• Player to test and deploy

• Cloud Make

• Common set of UI/Widgets

• Ease of Web and Power of Native Platform

Page 6: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

AppStudio for ArcGIS Includes Developer Productivity Tools

App Templates

App Player

App Make

App Upload

App Framework

Page 7: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

What is QML?

HTML

CSS

Frameworks &

Libraries, ArcGIS

JavaScript API

(Angular, jQuery)

JavaScript

QML

JavaScript

A JavaScript-based, declarative language for designing

user interface-centric applications.

Web Browsers

Quick Framework

AppFramework

ArcGIS Runtime

C++

Compilers

XAML

.NET Framework

ArcGIS .NET

Runtime API

Visual Studio

C# Compiler

C#

Player Make

Page 8: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Esri UC 2014 | Technical Workshop |

AppStudio for ArcGIS Bundled with Qt Creator

Write Apps using

• QML

• Styles, UI, Controls

• Assets

• Files, Images, Data

• JavaScript

• Business logic

• Events, I/O …

Page 9: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Qt Creator

• Launch from AppStudio

• Edit configuration files

• Edit QML and JavaScript code

• Context sensitive help

• Run app and other AppStudio tools

Page 10: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

App Development Cycle

AwesomeApp

Idea!

1 32

Ready for usersto download

and use

Select AppTemplate and

configureoptions

ConfigureTinker

EditRun

ShareMake

Publish

Page 11: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

AppPlayer Deployment Model

PlayerUpload

Page 12: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Native Deployment Model

Make

IPA

APK

EXE

DMG

RUN

Upload

Page 13: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Local Make

Windows MacOS Linux

Targ

et P

latf

orm Android Yes Yes Yes

iOS No Yes No

Linux No No Yes

MacOS No Yes No

Windows Yes No No

Windows Phone Yes No No

• AppStudio

• C++ Tools

• Platform Tools

Build the native apps on your own development systems

Page 14: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

How Cloud Make Works

AppFactoryService

App Item

Build Request

App

Upload

Make

1

2

3

Native App(s)

eMailNotifications

Page 15: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

The Stack

ArcGIS Runtime APIAppStudio

AppFrameworkQt Quick Framework

App App App App

ArcGIS Maps, Feature Services, Packages …

Page 16: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

QML APIs

ArcGISRuntime API

AppStudioAppFramework

Qt QuickFramework

• Core QML Components• UI Controls• Positioning• Sensors

• Map Control• Layers• Geometry• Portal• Geocoding• Network Analysis• Geodatabase• Symbology

• App Infrastructure• File System Components• Network Components• UI Widgets• Additional Plugins

Page 17: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

What is an App Item?

Assets

ItemInfo

QML/JavaScript

AppInfo

App Item

PublishOnline

Run inAppPlayer

on any device

Page 18: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Assets

What is an App Template?

App

Stage 1

App

Config.Params.

Stage 2

Assets

App

Config.Params.

Stage 3

ParamsWizard

App Template

Item

PublishOnline

Use inAppStudio

Page 19: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Extensibility

QML

• Reusable QML Components

• Shared QML Modules

• JavaScript Libraries

C++

• Integrated C++ Code

• C++ Based QML Modules

• 3rd Party Libraries

• Qt Core Plugins, including –– Positioning

– Sensors

Page 20: AppStudio for ArcGIS - Esri...Libraries, ArcGIS JavaScript API (Angular, jQuery) JavaScript QML JavaScript A JavaScript-based, declarative language for designing user interface-centric

Beta for Developer Summit

Release* for User Conference

* = Based on Your feedback

RoadmapAppStudio

for ArcGIS

Early Adopter Program open

To apply: http://bit.ly/appstudioforarcgis

One day Workshop on Mar 9 (Sold-out)