AppStudio for ArcGIS – rewolucja w świecie wieloplatformowych aplikacji GIS

AppStudio for ArcGIS – rewolucja w świecie wieloplatformowych aplikacji GIS

AppStudio for ArcGIS to uniwersalne narzędzie do tworzenia aplikacji wieloplatformowych, które doprowadzi cię do celu niezależnie od tego, czy jesteś doświadczonym developerem, czy pasjonatem chcącym łatwo zrealizować swój pomysł na aplikację.

Firma Esri kładzie duży nacisk na to, by proponowane przez nią rozwiązania były przystępne dla jak najszerszej grupy odbiorców. AppStudio for ArcGIS spełnia to założenie, umożliwiając tworzenie natywnych aplikacji na najpopularniejsze platformy bez konieczności posiadania umiejętności programistycznych, a także dowolne modyfikowanie ich kodu źródłowego i budowanie własnych rozwiązań od zera.

Jeśli jesteś już użytkownikiem ArcGIS Online, powinny być ci znane dostępne tam szablony aplikacji webowych oraz kreator Web AppBuilder. AppStudio for ArcGIS idzie krok dalej, oferując zestaw narzędzi pozwalających w podobny sposób „wyklikać” własne aplikacje natywne działające na systemach Windows, Linux, Mac OS, Android i iOS.

Do niedawna decyzja o stworzeniu aplikacji wykorzystującej technologię Esri, funkcjonującej na wielu rodzajach urządzeń, nie była dla nas łatwa, ponieważ konieczne było zazwyczaj tworzenie osobnego kodu dla każdego z docelowych systemów. Twórcy oprogramowania coraz rzadziej decydują się na takie rozwiązanie i sięgają po technologie hybrydowe.

Esri postanowiło wyjść naprzeciw oczekiwaniom programistów i w lutym 2015 roku wprowadziło ArcGIS Runtime SDK for Qt QML API, które pozwala na budowanie aplikacji Qt Quick, wykorzystujących ArcGIS Runtime SDK. W Qt Quick można tworzyć aplikacje wieloplatformowe przy użyciu deklaratywnego języka QML, służącego do opisywania wyglądu i zachowania tworzonego programu. AppStudio bazuje właśnie na ArcGIS Runtime SDK for QML API.

Dostępne szablony

W czasie pisania artykułu AppStudio for ArcGIS ciągle było jeszcze w fazie beta, a przewidywany termin premiery to koniec 2015 roku. Niemniej jednak do dyspozycji mamy już trzy w pełni sprawne i funkcjonalne szablony.

Jeśli chcemy przedstawić interesujący temat, prowadząc użytkownika do kolejnych miejsc na mapie, powinniśmy wykorzystać szablon Map Tour. Każdy z punktów podróży zawiera tytuł, opis oraz zdjęcie. Źródło danych dla aplikacji korzystającej z tego szablonu mogą stanowić mapa internetowa ArcGIS z co najmniej jedną warstwą punktową lub utworzona wcześniej aplikacja wycieczki.

Map Viewer jest typową przeglądarką danych przestrzennych zawartych na jednej lub wielu mapach internetowych. W aplikacji opartej na tym szablonie znajdą się narzędzia pozwalające na identyfikację obiektów, wyświetlanie legendy, a także kierowanie do interesujących miejsc.

Quick Report pozwoli użytkownikom aplikacji na zgłaszanie zdarzeń lub zjawisk występujących w określonych miejscach. Przykładem zastosowania może być aplikacja służąca do zbierania w terenie informacji na temat miejsc występowania ptaków. Wysłane za pośrednictwem programu raporty dodawane są do wcześniej przygotowanej warstwy punktowej. Projekt oparty na szablonie Quick Report obsługuje symbolizację podzieloną na kategorie, co pozwala użytkownikowi na wybór rodzaju zgłoszenia. Warto wspomnieć o możliwości dodawania do raportów załączników graficznych.

AppStudio for ArcGIS – wersja online

Pod adresem appstudio.arcgis.com znajdziemy stronę domową projektu, na której utworzymy naszą pierwszą aplikację, a także pobierzemy AppStudio for ArcGIS w wersji desktop. W nagłówku widoczny jest przycisk Create Your App prowadzący do podstrony z opisami szablonów dostępnych w wersji online. Gdy już zdecydujemy, z którego szablonu chcielibyśmy skorzystać, klikamy na odpowiedni odnośnik. Otwiera się widok z dwoma panelami – w lewym widzimy ustawienia aplikacji, a w prawym, zajmującym większą część okna, możemy podejrzeć, jak nasza aplikacja będzie wyglądała na wyświetlaczach różnych urządzeń.

Rys. 1. Kreator aplikacji on-line jest przejrzysty, prosty i intuicyjny

Rys. 1. Kreator aplikacji on-line jest przejrzysty, prosty i intuicyjny

Po zakończeniu konfiguracji, wybieramy Save and Finish. Następuje przekierowanie do App Console, gdzie możemy edytować opracowywaną aplikację, utworzyć dla niej stronę startową, przeglądać statystyki użycia. Na szczególną uwagę zasługuje opcja Build App, która pozwala na kompilację programu w chmurze, oszczędzając czas i środki potrzebne na instalację i konfigurację środowisk programistycznych dla poszczególnych platform. Przycisk Customize App uruchamia wersję desktopową AppStudio, która dodatkowo oferuje możliwość dowolnej edycji i tworzenia własnych szablonów. Nieaktywny w wersji Beta przycisk Publish to Store pozwoli na uproszczenie procesu publikowania aplikacji w Google Play i Apple App Store.

Znamy już podstawową funkcjonalność kreatora online, możemy zatem pobrać wersję desktopową AppStudio for ArcGIS, w której od razu zawarte są potrzebne biblioteki developerskie oraz Qt Creator – środowisko, w którym będziemy edytować / tworzyć aplikacje i szablony.

AppStudio for ArcGIS – wersja desktop

Wersja desktopowa AppStudio for ArcGIS rozszerza możliwości oferowane przez jego webowego odpowiednika. Procedura tworzenia nowych projektów jest analogiczna i równie intuicyjna; dochodzi kilka dodatkowych ustawień, takich jak wybór rodzajów urządzeń, jakie mają być obsługiwane, ustawienia wyświetlania, a także określenie wymaganych funkcji urządzenia mobilnego.

Rys. 2. AppStudio for ArcGIS (Desktop Edition) - ekran główny

Rys. 2. AppStudio for ArcGIS (Desktop Edition) – ekran główny

Liczba szablonów także jest większa. Oprócz znanych nam już Map Viewer, Map Tour i Quick Report dostępne są również: pusty projekt, szkielety aplikacji z kilkoma wariantami układu interfejsu użytkownika oraz dwie przykładowe aplikacje Hello World korzystające z ArcGIS Runtime SDK i QtLocation. Stanowią one dobry punkt startowy do tworzenia własnych szablonów.

W oknie głównym programu widzimy wszystkie utworzone projekty. Przyciski w menu pozwalają na edycję wybranej aplikacji, wgranie jej do zasobów naszego konta na ArcGIS Online, wygenerowanie plików instalacyjnych w chmurze, otwarcie folderu głównego projektu, a także otwarcie Qt Creatora w celu dostosowania szablonu do własnych potrzeb poprzez edycję jego kodu źródłowego.

Edycja / tworzenie własnych szablonów

Szablony dostępne w AppStudio for ArcGIS są projektami zbudowanymi na bazie ArcGIS Runtime SDK for Qt QML API, a ich kod źródłowy możemy modyfikować bez żadnych ograniczeń. ArcGIS Runtime SDK for Qt QML API udostępnia podstawowe możliwości spotykane w natywnych pakietach SDK ArcGIS. Możemy więc w aplikacji wyświetlić mapę w dowolnym układzie współrzędnych, a na nią nanieść warstwy pochodzące ze źródeł danych, takich jak: serwisy kafelkowe, dynamiczne i obiektowe hostowane na ArcGIS for Server, a także lokalne geobazy plikowe i paczki kafelków. Możemy stworzyć aplikację, która jest np. niezależna od platformy ArcGIS Online lub działa zupełnie offline. Typy QML dostępne w API w większości przypadków powinny wystarczyć do szybkiej implementacji typowych funkcjonalności spotykanych w aplikacjach GIS-owych, takich jak np. pomiary odległości, wyświetlanie listy warstw, ustawienia symbolizacji.

W pliku appschema.json, znajdującym się w folderze głównym danego projektu, definiujemy właściwości aplikacji, które będzie można edytować z poziomu AppStudio for ArcGIS w wersji desktop. Umożliwia to osobom niezwiązanym z programowaniem konfigurację naszego szablonu przy użyciu przyjaznego interfejsu użytkownika.

Powstały projekt możemy wgrać na ArcGIS Online, gdzie tak jak w przypadku domyślnych szablonów, mamy możliwość budowania w chmurze, śledzenia statystyk użycia i tworzenia strony powitalnej.

Podsumowanie

AppStudio for ArcGIS oraz ArcGIS Runtime SDK for Qt QML API mogą stać się jednymi z kluczowych produktów firmy Esri. Można też oczekiwać, że niedługo po ich oficjalnym wprowadzeniu na rynek będzie powstawało wiele dodatkowych szablonów tworzonych przez użytkowników.

Przydatne materiały

http://appstudio.arcgis.com/help.html –materiały wideo przedstawiające proces konfigurowania i publikowania aplikacji

https://developers.arcgis.com/qt/qml/api-reference/ – – lista typów dostępnych w ArcGIS Runtime SDK for Qt QML API

http://doc.qt.io/qt-5/qtquick-index.html – dokumentacja modułu Qt Quick

 

Czy zainteresował Cię ten materiał?