jefferson andrade - esri dev summit 2016 #02 - dev tools
TRANSCRIPT
Jefferson Andrade
Apps
APIs & SDKs
ArcGIS Desktop
ArcGIS for Server
including PortalArcGIS Online
Scene Layers
Scenes
http:
http:http:
TileLayers
Maps
Services
Data
FeatureLayers
ImageLayers
Analytics Analytics
The ArcGIS Platform The GeoInformation Model
Jefferson Andrade
Apps Making ArcGIS Available Everywhere
Public
Story Maps
Open Data
Office
ArcGIS EarthDashboardMaps for OfficeField
Navigator
Collector
Survey123
Workforce
ExplorerInsightsDrone2Map
Adobe Creative Cloud
Crowdsourcing
Jefferson Andrade
Portal
Servers
Servers can access data from external
as well as built in data stores
A Portal can integrate multiple Servers
10.4 enhancements include:• Resiliency
• Enterprise Integration
• Security
• Functionality
• Smart Mapping
• Spatial Analysis
• Vector Tiles
• Online Content Integration
ArcGIS for Server
Enables Web GIS in your own
infrastructure
Portal is part of and included with
ArcGIS for Server
Amazon
Azure
+
Jefferson Andrade
Roadmap Incremental and Groundbreaking Advancements
Pro 1.1
Crowdsourcing
Real-time
Utility networks
Location awareness
Massive 3D
Vector tiles
Web raster analysis
Advanced navigation
Modeling
Big data GeoAnalytics
Insights10.3.1
Pro 1.210.4
Incremental Software Release
Mobile
UAV/Drone
Continuous Online Improvements
Distributed GIS
10.4.1
10.5
Analytic Engines
Raster Analytics
Pro 1.4
Pro 1.3
User Roles
2015
2016
2017
Jefferson Andrade
Android
Python
REST Java
Web
Windows JavaScript
HTML5
Swift
QtApple
.NET
Build Apps !
Extend the PlatformConfigurable Apps
APIs &
SDKs
App
Builders
QML
Xamarin
Objective-C
C++
C#
Developer Tools Software and Content to Build Your Own Apps
Plans tailored to what you build
NEW DEVELOPER SUBSCRIPTION
Improved Accessibility and Delivery
Build Apps Extend ArcGIS
APPSTUDIO FOR ARCGIS
• Native apps made very
easy
• You focus on content
• AppStudio takes care of
the rest
https://appstudio.arcgis.com/
Jefferson Andrade
iOS
Android
Linux
Windows
Mac
1App
AppStudio for ArcGIS
CROSS-PLATFORM NATIVE APPS
WEB APPBUILDER
• Provides more control than
templates
• Creating apps using
configurable widgets
• Supports 2D and 3D
• Developer edition enables
custom widgets and themes
https://developers.arcgis.com/web-appbuilder/
WEB APPBUILDER 2.0
21
WHAT’S NEW 2.0 – MARÇO 2016HTTPS://DEVELOPERS.ARCGIS.COM/WEB-APPBUILDER/GUIDE/WHAT-S-NEW.HTM
• 3D Apps (Beta)
• Novo design da página inicial
• Opção de salvar estado do mapa (extensão do mapa e camadas)
• Widget Análise de Incidente
• Widget Próximo a Mim: features próximas e direções.
• Widget Busca por Distrito: polígonos e pontos relacionados e direções.
• Widget Gráficos da Tabela Relacionada: barra ou pizza.
• Widget Info Summary: mostra número de feições visíveis no mapae permite fazer cluster.
• Novo tema Plateau
• Atributos escolhidos podem ser exibidos somente na edição.
• Pode-se abrir o Widget de Edição diretamente da janela Pop-up.
• Adição de shapefiles no Widget Geoprocessamento.
• Entre outras.
WEB APPBUILDER
Jefferson Andrade 22
HTTP://GAVINR.GITHUB.IO/WEB-APPBUILDER-TOOLS-TECHNIQUES-DEV-SUMMIT-2016/#/
APPS CONFIGURÁVEIS
• Great way to share your web
maps
• Focused User Experiences
• Many new templates
APPS CONFIGURÁVEIS
http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable
27
APPS CONFIGURÁVEIS
http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable
28
APPS CONFIGURÁVEIS
http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable
29
STORY MAPS
30
HTTP://STORYMAPS.ARCGIS.COM/EN/GALLERY/#S=0
• 2D & 3D visualization
• Read & write web scenes
& web maps
• A simpler, more consistent
API design
• Mobile-first design
• Better integration with frameworks
4.0 ArcGIS JavaScript API Reimagined
Jefferson Andrade
ARCGIS JAVASCRIPT API 4.X
ROADMAP
• Final release Q2
• Releases in Q3 and Q4
– More renderers
– More layer types
Jefferson Andrade
ARCGIS JAVASCRIPT API 3.X
ROADMAP
• Spring release 3.16
• Active development through
2016
• Primary innovation will shift
to 4.x
• Technical support through
2018
ArcGIS Online uses 3.x JS API
ARCGIS RUNTIME SDKS
Runtime built using C++EXPLOITS THE CAPABILITIES OF THE DEVICE
Functionality exposed to developers via an API
native to the platformINTUITIVE TO LEARN
Common functionality set and conceptual modelEASES MULTI-PLATFORM DEVELOPMENT
ARCGIS RUNTIME SDKS
• Work connected or disconnected form the Internet
• Exploits device capabilities
• Works with sensors connected to the device
• High performance
CONTENT ANALYSIS 3DNEW APIs CROSS PLATFORM
ARCGIS RUNTIME QUARTZ RELEASE
HTTPS://DEVELOPERS.ARCGIS.COM/IOS/BETA/
QUARTZ API DESIGNED FOR PRODUCTIVITY
• Supports Web GIS
• Mapping API enhanced
• Seamless use of platform
identity
• All the runtime APIs reflect
new model
ARCGIS RUNTIME SDK FOR XAMARIN
• Supports developers building .Net
C# apps for iOS and Android
• API Surface matches ArcGIS
Runtime .Net API
• Strong community of Xamarin
developers building and deploying
apps
BRINGING IOS AND ANDROID DEVELOPMENT TO .NET
https://developers.arcgis.com/xamarin/
ArcGIS Runtime Quartz Release Timeline
Today
Q2Final
iOS, Android
Q3Beta
iOS & Android
Working with Maps
• Connected
• Routing
• Geocoding
Q1Beta
iOS, Android
Working with Maps
• …
• Disconnected
• Vector tiles
• Mobile Map Package
Q2Beta
.Net, Xamarin,
Java, Qt
Working with Maps
And Scenes
• …
• 3D
• Advanced symbology
• Cross platform
Q3Final
iOS, Android,
.Net, Xamarin,
Java, Qt
Working with Maps
And Scenes
• …
• 3D for iOS and
Android APIs
• WFS...
Jefferson Andrade
ARCOBJECTS UPDATE 10.4+
Building Blocks of ArcGIS . . . Most Comprehensive Collection of GIS Functionality
• Customizing and Extending ArcMap
• Supporting VS2013/2015 and .NET 4.5 now• ArcObjects will continue to be supported on latest Visual Studio
• ArcObjects resources available on github:
• https://github.com/Esri/arcobjects-sdk-community-samples
• Extending Server using .NET or Java
– Building SOEs and SOIs
– Supporting the latest version of Eclipse
Customizing and
Extending ArcGIS
ArcGIS Server
Preserve API compatibility with clients
Extend existing GeoServices
Program in Java or C#
Administrators manage deployment
Developers
Users
Apps
Administrators
build
deploy
extend
preserve
Publishers activate as desired
Portal
EXTENDING THE PLATFORM USING SERVER
OBJECT INTERCEPTORS
http://server.arcgis.com/en/server/latest/publish-services/windows/about-extending-services.htm
Functional SOI
Security SOI
Server Object
Or
Server Object Extension
GeoServices API
Client Apps & APIs
SERVER OBJECT INTERCEPTORS
• Pre-process requests
• Post-process responses
• Chain multiple SOIs
Asset Data715 gauges
Layer and map is not time aware…
Observation/Time Series Data> 5 million observations
(daily, over 20 years)
Join multiple datasets, enable time, aggregate values, give me a rewindable map …
AVG_WaterLevel MAX_WaterLevel MIN_WaterLevel
1.03 1.05 1.02
Observation/Time Series Data> 5 million observations
(daily, over 20 years)
Time enabled, aggregated
rewindable map
Rewindable map
- moving average, computed on-the-fly
- dynamic time range
Security SOI
Viewer role vs Analyst role
Functional SOI
Asset + Observation data in a Re-windable map
Latest Operational map
- current water level
PYTHON IS A POWERFUL PROGRAMMING LANGUAGE
• Portable
• Rapid development
• API is self-documenting
• As a glue to other languages
• ArcPy is Esri’s Python Module
Jefferson Andrade
ARCGIS PLATFORM PYTHON API
What is it?
• A new Python API for your GIS, which could be Online or On-premises
(Server w/Portal).
• This API is intended for use by org administrators, content publishers,
power users, developers, analysts and data scientists – who have
workflows that require scripting or automation.
INTEGRAÇÃO DO ARCGIS COM CONDA
• Discover and utilize the most relevant Python
modules
– It just works!
• Use a single version of Python across the platform
• Works behind the firewall
https://4326.us/esri/conda/
https://github.com/scw/conda-devsummit-2016-talk
CONDA
Jefferson Andrade
HTTP://CONDA.PYDATA.ORG/DOCS/INDEX.HTML
REACT NATIVE
Jefferson Andrade 64
HTTPS://CDN.RAWGIT.COM/GLAZOU/REACT-NATIVE-ARCGIS-SDK-
DEMO/MASTER/NATIVE%20APPS%20IN%20JAVASCRIPT%20WITH%20REACT%20NATIVE%20-%20LESSONS%20FROM%20A%20PROTOTYPE.PDF
REACT NATIVE WITH ARCGIS RUNTIME SDK
Jefferson Andrade 71
HTTP://GITHUB.COM/GLAZOU/REACT-NATIVE-ARCGIS-SDK-DEMO
ANGULARJS E JS API
Jefferson Andrade 73
HTTP://PROCEEDINGS.ESRI.COM/LIBRARY/USERCONF/DEVSUMMIT16/PAPERS/DEV_INT_193.PDF
ANGULARJS E JS API
Jefferson Andrade 76
HTTPS://GITHUB.COM/ESRI/ANGULAR-ESRI-MAP
EMBERJS
Jefferson Andrade 82
HTTP://ODOE.NET/BLOG/UPDATE-ON-EMBER-WITH-ARCGIS-JS-API/
REDUX
Jefferson Andrade 83
HTTP://REDUX.JS.ORG/DOCS/BASICS/USAGEWITHREACT.HTML
TYPESCRIPT
Jefferson Andrade 85
HTTP://PROCEEDINGS.ESRI.COM/LIBRARY/USERCONF/DEVSUMMIT16/PAPERS/DEV_INT_202.PDF
Jefferson Andrade de Oliveira Júnior
Ramal: 7762
Skype: jeff_bh
DÚVIDAS?
OBRIGADO!