Please activate JavaScript!
Please install Adobe Flash Player, click here for download

arcAKTUELL 2.2013 - Mobil unterwegs

48 T I P P S U N D T R I C K S Einleitung Ende März ist die Version 3.4 der ArcGIS API for JavaScript erschienen (http://blogs.esri.com/esri/arcgis/2013/03/25/arcgis-api-for-javascript- version-3-4-released/). Eine vollständige Liste der Neuerungen findet sich in der API-Dokumentation http://developers.arcgis.com/en/ javascript/. Die API ist an der bekannten Stelle aufrufbar (http://help. arcgis.com/en/webapi/javascript/arcgis/). Alternativ kann sie als Download von http://www.esri.com/apps/products/download/ bezo- gen werden. Directions und Pop-up Widget Das neue Directions Widget erlaubt es, schnell und einfach einen Rou- tingdienst in die eigene Anwendung einzubauen. Dabei wird sowohl das Benutzer-Interface und die Darstellung der Route als auch Funktio- nalität zur Ansprache des Dienstes mit ein paar Zeilen Code bereitge- stellt. Per Default läuft das Routing über den Dienst World Network Analysis von ArcGIS Online, der über eine ArcGIS Online Subskription genutzt werden kann. Das Widget kann aber auch auf eigene Routing- dienste umgeschaltet werden. Über die Routingparameter kann die Ausgabesprache des Routings angepasst werden, wenn der Dienst die- se Sprache unterstützt (» Abbildung 1). Das ebenfalls neue Pop-up Widget löst das bisherige InfoWindow als Karten-Pop-up ab und ermöglicht damit flexiblere und ansprechende- re Designs, die auch für mobile Geräte angepasst und optimiert wer- den können (» Abbildung 2). Touch Events, Browserunterstützung und Tabellen Seit Version 3.4 unterstützt die ArcGIS API for JavaScript nun auch die Touch Events für Firefox, Chrome und Internet Explorer 10, so wie sie in Windows 8 genutzt werden können. Diese neue Funktion ist extra für den Internet Explorer 10 eingebaut worden, der mit dieser Version der API erstmals in der Liste der unterstützten Browser steht (http://help.arcgis. com/en/webapi/javascript/arcgis/jshelp/supported_browsers.html). Das Dojo Framework und AMD (Asynchronous Module Definition) Die ArcGIS API for JavaScript 3.4 basiert auf Dojo 1.8.3 und liefert es mit. Es ist also nicht notwendig, zusätzlich noch auf die Dojo-Bibliothek zu verweisen. Zusätzlich sind drei erweiterte Bibliotheken im Paket da- bei: In einigen Samples wird für die tabellarische Darstellung von Infor- mationen das dgrid (in der Version 0.3.4) verwendet, was eine schnelle- re Darstellung ermöglicht als mit dem Standard Dojo Grid. Mit dieser Bibliothek sind auch die Bibliotheken put-selector und xstyle eingebaut. Anwendungen mit dem dgrid müssen im neuen AMD Pattern geschrie- ben sein. AMD bedeutet „Asynchronous Module Definition“ und ist im Dojo Framework implementiert (http://help.arcgis.com/en/webapi/ javascript/arcgis/jshelp/inside_dojo_amd.html). Durch das nebenläufige (asynchrone) Nachladen von Komponenten laufen die Anwendungen schneller. Ohne AMD werden die benötigten Dojo-Komponenten alle direkt beim Start der Anwendung geladen. Seit Version 1.8 fordert Dojo verstärkt die Nutzung von AMD, ist aber noch mit der klassischen Art kompatibel. Die ArcGIS API for JavaScript unterstützt beide Methoden und hat in der Version 3.4 auch alle Module auf AMD portiert. Dies sieht man auch in der API-Referenzdokumentation (http://help.arcgis.com/ en/webapi/javascript/arcgis/jsapi/). Jedes Modul zeigt die Beschrei- bung als „Legacy Module Require“ (mit dojo.require(...)) und als „AMD Module Require“ (über require([...], function(...) {...})). Zusätzliche Infor- mationen zur AMD-Unterstützung werden in der nächsten Zeit von Esri zur Verfügung gestellt. Falls eine Anwendung auf eine neue API-Version migriert wird, kann dies weiterhin ohne AMD-Unterstützung geschehen. Bei der Neuentwicklung von Anwendungen auf der Basis der API-Ver- sion 3.4 ist es empfehlenswert, aber nicht zwingend notwendig, auf das AMD Pattern zurückzugreifen. ArcGIS Online Neuerungen in ArcGIS Online spiegeln sich auch in der ArcGIS API for JavaScript. So ist die Methode getLegendLayers implementiert, die Legenden explizit für die ArcGIS Online Webmaps abruft. Des Weiteren sind der Abruf einzelner Benutzerelemente über die Portal-API und das Einbinden externer Datenquellen wie GeoRSS Feeds oder von WMTS- Diensten in die Webmaps nun auch über die ArcGIS API for JavaScript möglich. Zuletzt kann man nun auch das Rendering von dynamischen Layern programmatisch verändern. Diese wichtige Funktion war ja schon seit ArcGIS Server 10.1 verfügbar und ist nun auch auf ArcGIS Online Webmaps anwendbar. Zusammenfassung An dieser Stelle sind nur die wichtigsten Änderungen aufgeführt wor- den. Weitere Neuerungen und die Liste der gefixten Bugs finden sich in der oben erwähnten Online-Hilfe. Neue Anwendungen können direkt mit der neuen ArcGIS API for JavaScript 3.4 erstellt werden. Es ist emp- fehlenswert, dies mit dem AMD Pattern umzusetzen. Das Upgrade vor- handener Anwendungen auf die neue Version empfiehlt sich dann, wenn man einige der neuen Features nutzen will oder von einem der Bugfixes abhängig ist. Beim Upgrade muss man nicht auf das AMD Pat- tern wechseln. In internen Netzwerken kann die API lokal eingerichtet werden, wobei die verschiedenen Versionen einfach nebeneinander an- geboten werden können. Axel Schäfer Esri Deutschland GmbH Niederlassung Köln ++ TIPPS UND TRICKS FÜR ENTWICKLER ArcGIS API for JavaScript 3.4 1 2

Seitenübersicht