AppStudio AppFramework

The AppStudio AppFramework provides QML components used when creating apps in ArcGIS AppStudio. It includes components from ArcGIS Runtime and components that target cross-platform app development.

At the beginning of every QML file, import the modules you will use in that file. The available AppStudio AppFramework modules are the following:

import ArcGIS.AppFramework 1.0
import ArcGIS.AppFramework.Authentication 1.0
import ArcGIS.AppFramework.Barcodes 1.0
import ArcGIS.AppFramework.Desktop 1.0
import ArcGIS.AppFramework.Devices 1.0
import ArcGIS.AppFramework.Management 1.0
import ArcGIS.AppFramework.Networking 1.0
import ArcGIS.AppFramework.Notifications 1.0
import ArcGIS.AppFramework.Notifications.Local 1.0
import ArcGIS.AppFramework.Positioning 1.0
import ArcGIS.AppFramework.SecureStorage 1.0 
import ArcGIS.AppFramework.Sensors 1.0 
import ArcGIS.AppFramework.Speech 1.0
import ArcGIS.AppFramework.Sql 1.0
import ArcGIS.AppFramework.VideoFilters 1.0 
import ArcGIS.AppFramework.WebView 1.0

The following modules contain beta components and unfinished functionality that is subject to change:

import ArcGIS.AppFramework.InterAppCommunication 1.0
import ArcGIS.AppFramework.Multimedia 1.0 
import ArcGIS.AppFramework.Platform 1.0
import ArcGIS.AppFramework.Scripting 1.0

The following module is required for apps built with ArcGIS Runtime:

import Esri.ArcGISRuntime 100.15.1

The number in this import statement represents the version of ArcGIS Runtime that is targeted by the app.

Caution:

AppFramework.Promises and AppFramework.Controls modules were removed from AppStudio 5.0. Replace your use of AppFramework.Promises with the JavaScript implementation of promises. Replace your use of ImageButton from AppFramework.Controls with the Button component from Qt. In both cases, ensure that these obsolete import statements are removed from all files in your app.

The AppFramework checkCapability method was also removed from AppStudio 5.0. Replace your use of checkCapability with the checkPermission method from the Permission component in the Platform module.

The SensorPort component has been removed from AppStudio 5.1. Replace your use of SensorPort from AppFramework.Sensors with SerialPortDevice from AppFramework.Devices.

AppFramework

This is the primary level Esri module used by AppStudio. It contains cross-platform components that are not found in Qt Quick but are useful for making apps. AppFramework includes the following:

  • App infrastructure
  • File system components
  • Network components
  • UI widgets
  • Additional plug-ins

The QML components of this module are listed in the AppFramework API Reference.

The following components are deprecated and will be removed from the subsequent release.

  • AppPackage
  • AppInfoList
  • AppPlayer
  • AppPlayerSettings
  • ItemPackage

AppFramework.Barcodes

This module is based on code from the ZXing C++ library and contains BarcodeDecoder for static image analysis and BarcodeFilter for real-time image analysis. For details, see https://github.com/glassechidna/zxing-cpp.

The QML components of this module are listed in the Barcode API Reference.

AppFramework.Devices

This module is based on some Qt Bluetooth and serial components, the Android Beacon Library and makes use of native APIs on iOS.

The Devices module is used to connect to external hardware—most commonly Bluetooth GNSS receivers but also serial and Bluetooth LE hardware. To learn more about Bluetooth, Bluetooth LE, and beacons, see Bluetooth devices.

The QML components of this module are listed in the Devices API Reference.

AppFramework.Positioning

This module exposes Qt positioning components and adds additional components for working with external GNSS receivers.

The QML components of this module are listed in the Positioning API Reference.

Esri.ArcGISRuntime (when using ArcGIS Runtime 100.15.1)

This module contains the equivalent of the ArcGIS Runtime module in the ArcGIS Runtime SDK for Qt (QML API) and includes the following:

  • Map control
  • Layers
  • Geometry
  • Portal
  • Geocoding
  • Network analysis
  • Geodatabase
  • Symbology
  • Web map

The QML components of this module are listed in the ArcGIS Runtime QML API Reference.

Caution:

The following modules require changed names from previous versions of ArcGIS Runtime:

  • SpatialReference is now Factory.SpatialReference
  • Runtime.Toolkit.Controls is now Runtime.Toolkit
  • Runtime.Toolkit.Dialogs is now Runtime.Toolkit

For more information, see QML API Breaking Changes with 5.15 on the ArcGIS Runtime blog.