Skip navigation
All Places > AppStudio for ArcGIS > Blog > 2016 > December
2016

AppStudio for ArcGIS 1.3 ships with a new “Advanced Configuration Tool” that allows you to configure AppStudio components such as AppFramework, Runtime libraries, configurations for Local Make, Doc configurations with any external Qt Creator, so that you can run and debug AppStudio apps in Qt Creator.

 

Why do you need it?

 

This is a provision for developers who already have an existing licensed version of Qt, to enable them to work with AppStudio applications. However, you don’t need the Advanced Configuration to develop or build apps via cloud Make using AppStudio’s Qt Creator.

It is a highly recommended to use the Advanced Configuration if:

  1. You have an enterprise version of Qt other than the one which comes with AppStudio
  2. You want the ability to debug apps in QML Scene
  3. You want to perform local Make instead of cloud Make to generate binaries for your apps
  4. You want the complete AppFramework documentation in your Qt Creator (the Qt Creator which comes along with AppStudio is pre-configured)

 

Points to remember

  1. Every time you install a licensed version of Qt and reinstall AppStudio, you will want to use the Advanced Configuration Tool to configure with the Qt kits.
  2. You don’t need to use Advanced Configuration Tool if you don’t have a commercial license of Qt.
  3. If you are configuring on Windows, you want to be sure the Qt and AppStudio installer versions match (for e.g. 64-bit AppStudio with a 64-bit Qt).
  4. Qt can only be configured to produce apps for certain platforms, depending on your own operating system. iOS, for example, is not available for Windows systems. The Advanced Configuration Tool will only display platforms available for your operating system.
  5. You can always use the help icon located at the bottom left of the window to visit the web documentation page.

 

                                       

 

For more information on the advanced configuration tool, including a step-by-step guide,

see Configure with Qt kits in our documentation.

Tile Package Kreator (TPK) is a new Esri Labs desktop application for Windows, Mac and Linux that is focused on tile package creation and discovery. As an Esri Labs project, the TPK is free to use but is not an official Esri product and is not supported by Esri technical support.

 

Currently, Esri provides several ways for users to create tile packages, most notably via ArcMap and Pro applications. The TPK is meant to provide a focused utility for users that need to simply create a tile package for offline use, browse and download organizational tile packages from ArcGIS Online (with Portal support on its way) and upload existing local tile packages online.

 

The TPK requires an internet connection as it uses online map services that support exporting tiles to complete its tasks. These services may include well known Esri basemaps, such as the World Street Map or Light Gray Basemap, as well as publically facing map services or custom organizational map services created via ArcMap or Pro that have been published online and enabled to allow the exporting of tiles. Once the tile package is created via online services, it can be used in offline scenarios, such as within Survey123 as a basemap for a specific survey.

 

Creating Tile Packages

 

Creating tile packages with the TPK is straightforward. Once a map service is chosen, the user can create an area of interest by either drawing a rectangular envelope or a multipoint buffered path on the map. The buffered path might be useful when tiles are only needed along a specific complex route such as a stream or trail. The online services that are employed to create tile packages via the TPK are designed to only return the tiles needed to display the path at the requested levels, which can greatly reduce the overall size of the tile package as unneeded tiles aren’t included. After drawing an area of interest, the user can either save the tile package locally, or upload it to their ArcGIS online content, with the additional option of sharing it with the organization, or publicly.

 

It should be noted that there are limitations with the creation of tile packages via online services. Tile packages created via these services are in general limited to a maximum of 100,000 tiles. The TPK provides an estimated output size, however this is just a guide, and requests may be rejected via the service after it performs its own estimation. The TPK provides feedback during this process. Also, the larger the tile package size, the greater the bandwidth needed to download and upload them. Currently, Esri doesn’t support transferring a tile package created online directly to a user’s online account, so the TPK requires downloading the tile package file first before uploading it to a user’s online content. These limitations aside, the TPK should prove useful for the effective creation of offline basemaps that cover smaller geographic areas with a high number of zoom levels.

 

Browsing and Uploading Tile Packages

 

Along with creation of tile packages, the TPK also provides an interface that allows a user to browse online tile packages that are private or have been shared with the user’s organization. A context menu for each tile package displayed allows the user to view it online via ArcGIS or download it locally for use offline. 

 

An upload interface is also included with the TPK that focuses solely on pushing and sharing local tile packages to the user’s online content. A bonus of this upload tool is the spatial reference check conducted. When a tile package file is selected, the TPK opens it up and checks to see if its spatial reference is Web Mercator, alerting the user if it is or is not. As the Web Mercator spatial reference is used with many online and native tools, this check provides the user with a pre-upload compatibility verification of sorts.

 

Customizing the Tile Package Kreator

The source code of the Tile Package Kreator is shared under the Apache 2.0 License, so if you like you can take this app and make it your own. You can find the source code at GitHub - Esri/TilePackageKreator: Tile Package Kreator.

 

Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.

The easiest way to download the source code is by using AppStudio for ArcGIS Desktop Edition. Once installed, click on New App and search for TilePackageKreator under the Enterprise category. You can look at the code, modify it and run it in your Mac or Windows development machine. If you have an AppStudio for ArcGIS Standard license, then you will be able to compile your code for Windows, Mac and Linux.

With the AppStudio 1.3 release, we have made some great improvements and additions to the three featured templates. Highlights include: 

 

  • Quick Report – support for offline data capture and multiple photos per report 
  • Map Tour – better picture and video support, better feature navigation 
  • Map Viewer – added layer list, map scale, units and location accuracy 

 

If you have already used a featured template to create an app, it will continue to work as is. New apps created at appstudio.arcgis.com will use the new templates. As of AppStudio 1.3 you can also create apps from these featured templates within AppStudio for ArcGIS Desktop Edition. Some of the new features can only be configured in AppStudio Desktop Edition.  

 

Look out for follow up blogs coming soon for details on all new features in each template. 

 

Create a new app from a featured template online 

 

  1. Got to appstudio.arcgis.com and sign in with your ArcGIS organizational account 
  2. Click Create your app 
  3. Click Start with this template for either Map Tour, Map Viewer or Quick Report 
  4. Add title, Summary, images and setting and click Save and Finish

 

At this point you can sign into AppStudio Player to download and use your app, choose to build installation files to create a standalone app, or open the app in AppStudio Desktop Edition for additional configuration or customization. 

 

Create a new app from a featured template in AppStudio Desktop Edition 

 

  1. Launch AppStudio Desktop Edition 
  2. Click New App 
  3. Choose from the template category, enter a title and click OK 

 

At this point you should click Settings to configure the app further. You can also sign into AppStudio Player to download and use your app, choose to build installation files to create a standalone app, or open the app in Qt Creator to customize it. 

 

Migrating an existing app to use a new template 

 

Many of you have already created great apps from our featured templates. There are several ways to migrate to using a new version of the templates. 

 

The method that has the least room for error, is to create a new app using the same resources as your original app. Create your new app in appstudio.arcgis.com or AppStudio Desktop Edition and add your feature service, web map or images. This will mean all the files inside the app will be guaranteed to be the latest. If you already share your app in your ArcGIS organization, it will mean the app is a new item. 

 

If you need your updated app to remain as the same item in your ArcGIS organization, you will need to use AppStudio Desktop Edition and copy and paste files. The critical file that you need to preserve from your original app is the appinfo.json file. Create a new app as described above, and copy all of the files over your existing ones, leaving only appinfo.json as original. 

 

You can also choose to selectively update individual files using a file comparison tool. This choice is very much dictated by your level of comfort with the code, and might be the best option if you have added your own files to the app. 

Using virtual devices with AppStudio

 

AppStudio for ArcGIS 1.3 has brand-new integrated support for virtual devices, i.e. the capability to use iOS simulators and Android emulators. These are intended for rapid development and testing your apps without the need of having multiple phones and tablets with different versions of operating systems at hand.

 

The iOS simulator is only available on the AppStudio desktop for Mac, whereas the Android emulator is available for Windows, Linux and Mac. To leverage the use of virtual devices you do need to install some development tools on your desktop.

 

This new feature also allows you to physically connect an Android device to your desktop and synchronize your desktop apps to aid rapid development.

 

For more information on setting up virtual device usage in AppStudio see our documentation.

 

Getting started with iOS Simulators (Mac)

 

The iOS simulator is installed as a part of XCode. To start using the simulator device images you must first install XCode and command line tools 7.0+ from https://developer.apple.com/download/ (You don’t need an Apple Developer License to perform this action).

 

The simulator allows you to test apps with several SDK versions and operating systems. You can download additional simulator device images within XCode, open XCode and select Menu > XCode > Preferences > Select Components

 

After installing XCode, you can view a list of simulated devices when you click on the Virtual Device icon in AppStudio.

 

 

 

Getting started with Android Emulator (Windows, Linux & Mac)

 

To get started with the Android emulated environment, first you need to install Android Studio from https://developer.android.com/studio/index.html and create x86 device images from Android Virtual Device (AVD) https://developer.android.com/studio/run/managing-avds.html

 

Tip: For existing AppStudio customers you might have realized that now AppStudio supports Android x86 as a target platform. Though most of the physical Android devices out in the market are based on arm7, the emulator world is dominated by a much faster x86 version.

 

Points to remember while creating AVD images:

  1. Enable software rendering, otherwise AppStudio Player will not run. This slows the emulator down considerably, so setup the virtual device beforehand.
  2. Due to OpenGL limitations, set the minimum API support level to 23. Player will not run on any lower API level in emulation.

 

Click on the Virtual Device icon to see your Android emulator devices.

 

 

Select a device and whilst the emulator loads your device, apply sync, the AppStudio Player on an emulator doesn’t pick up the latest changes unless you have instructed it to do so.

 

 

 

Connected Android devices

 

AppStudio provides an additional feature for Android users. You can now run an app on a physical device directly using AppStudio’s Virtual Device interface. On a physical Android device, you can always install AppStudio Player and download all apps that is available and shared via the organization. This is a developer friendly way to sync all your apps from AppStudio which is the same as the sync function on an emulator. This saves you a bit of time in uploading your app and then downloading it again in the Player.

 

To enable this feature:

  1. Enable developer mode on your Android device
  2. Enable USB debugging under Developer Options
  3. Ensure that your Android device needs to be on the same Wi-Fi network as AppStudio Desktop
  4. Connect your device via USB to your machine
  5. Click on Virtual Device in AppStudio Desktop and select your device

 

The infinite monkey theorem states that a monkey hitting keys at random on a typewriter keyboard for an infinite amount of time will almost surely type a given text, such as the complete works of William Shakespeare.

 

You don't have an infinite amount of time to write your app and hopefully your keystrokes will be less random than that of a monkey, so the time it will take you should be significantly less than infinity.

 

We have provided many resources to help you write your app: blogs, samples, templates and documentation. Identifying which of these suits which users is a challenge. Saying something is easy or difficult, alienates as many people as it helps.

 

Borrowing from (and bending) the infinite monkey theorem, we have chosen a classification scale to describe our content. If the goal is an app (rather than the complete works of Shakespeare), and you have a computer and some sustenance - in this case bananas - you can build your app. The question is how many bananas?

Every monkey needs sustenance, and depending on how difficult / complex / time consuming a task is, more sustenance is required. Here is our banana rating for our resources.

 

Scale for AppStudio

  • One banana means anyone who can recognize what a variable is, read a list of parameters and is willing to tinker with them, should be able to make use of the resource.

  • Two bananas means if you can recognize JavaScript and are comfortable with cutting and pasting code snippets from the internet into your app, this resource is right for you.
  • Three bananas means you’re happy to call yourself a hacker. You might only know one language (pretty well) or might know a few (to different levels), but lots of files don't scare you, you see them as a wealth of opportunity to refactor!

  • Four bananas means coding is your thing. You enter 'programmer' on forms when asked what you do. Not only are you happy to explore the samples, you are building apps from scratch.

 

 

Right now you can see the banana rating in the Samples that are available in AppStudio.

 

New blogs will also use the banana rating to help convey the difficulty, complexity and time to digest for the content.

AppStudio for ArcGIS is now available. Go directly to the product website https://appstudio.arcgis.com and sign in with a Named User account to

  • create an app from a template, directly on the web, or,
  • download AppStudio for ArcGIS Desktop Edition.

 

 

The key new features of this release include:

  • Virtual Device Support: AppStudio now supports for virtual devices running on an Android emulators or iOS Simulator. AppStudio Player can now be launched on the virtual device, which will also be synced with all the app files on the desktop. This provides a convenient way to test your apps on multiple platforms directly from your desktop development environment.

 

  • Enterprise Logins: Enterprise logins now work on all operating systems supported by AppStudio, by handling OAuth authentication requests from a web base identity manager.

 

  • Local Make Configuration tool (Advanced Configuration Tool): The new advanced configuration tool streamlines the process of setting up a local build environment and associating AppStudio with an external Qt kit.

 

  • AppStudio Templates:

 

  • Map Tour Template: Map Tours can now be sorted either by name or distance from the user, and now supports story map videos directly within the app.
  • Map Viewer Template: Maps can now display map credits, scale, map units, location accuracy and an interactive list of map layers.
  • Quick Report Template: The Quick report template has been redesigned with a new look and feel. It now supports multiple photos in one report, embedding a web map, as well as creating and editing reports when offline.

 

 

  • Other Improvements
  • Qt components have now been upgraded to 5.6.2.
  • AppStudio Console now provides a QR code to connect to it through. Player, in turn, now has a barcode scanner.
  • The camera interface is now capable of identifying if camera flash is supported.
  • Various UI improvements have been made to AppStudio Player.

 

 

 

In addition to these there have been many enhancements and bug fixes that have been requested by our users. These are listed here:

 

BUG-000089468

Fixed the issue on the about screen of quick report, where the section titled 'access information' is actually displaying the content of field 'credits', instead of the field 'access and use constraints'.

BUG-000092433

Fixed the issue in which the username string on the Sign Out button gets incorrectly split in the Player menu.

BUG-000092434

Menu items in the app menu, which opens by clicking the app in the gallery, are no longer truncated.

BUG-000092435

Menu items in the app category menu, used to filter the apps in the gallery, are no longer truncated.

BUG-000092437

The message "The selected app is already your device" is now translated

BUG-000094692

In AppStudio for ArcGIS, configuring a feature search by layer does not apply a graphic pin in the AppStudio Player application.

BUG-000097036

The Sign In page on player is now localized

BUG-000097386

Settings page in Player is now translated

BUG-000097474

Confirmation dialog that appears after downloading an app is not truncated anymore

BUG-000097476

Fixed the issue in which the confirmation dialog that appears after downloading an app had an incorrect line break between the app name

BUG-000097481

Corrected the date/time format on the info screen of the app

BUG-000097758

Fixed the issue in which enabling labels on a feature layer consumed in an AppStudio for ArcGIS application causes the application to crash on 64-bit iOS devices.

BUG-000097982

If an app is created from the Map Viewer template and using just one webmap, the web map gallery page is skipped and the map is displayed directly.

BUG-000099197

Translated the string "Downloading" after scanning the QR code in Player

BUG-000099220

The Settings dialog in AppStudio Desktop is Localized

ENH-000090538

Enhance the Map Tour template, created using AppStudio for ArcGIS Beta 3, to support playing videos from story maps directly within the app itself.

ENH-000095877

Add audio functionality to the AppStudio for ArcGIS Map Tour template.

ENH-000096769

Give the Quick Report template in AppStudio for ArcGIS the ability to access Android's Photo Gallery.

ENH-000097546

Add the ability to add multiple photos to an AppStudio Quick Report submission