Deployment
ArcGIS Maps SDK for Kotlin enables you to build mapping applications for Android platform phones and tablet devices. Follow the steps below to ensure you have licensed the capabilities that your app uses and that you understand associated costs.
- License the capabilities you included in the app. Refer to the License levels and capabilities topic to determine the license level you require, and to the Get a license topic to learn how to acquire a license.
- Attribute Esri in your app.
- If you deploy content or services from ArcGIS location services, see the Deployment topic in the Mapping APIs and Location services guide.
- Learn about Deploying local data, including projection engine files, ENC style directory, and deploying specialized symbols.
If your app is licensed at the Standard level or above and you would like to deploy it via an app store or marketplace, let us know by emailing runtimelic@esri.com.
When you create the APK for your application, consider targeting your app for a specific architecture to reduce the size of your APK.
Attribute Esri in your app
Esri requires that when you use an ArcGIS Online basemap, Esri data services, or Esri API technology in your app, you must also include Esri attribution. There are specific requirements for attribution that you may be required to address in your app depending on how your app is built and the data it uses. These requirements are outlined in detail in the Attribution in your app topic.
Deploy local data
Deploying data locally allows access to that data without a network connection. Local data refers to files that are not part of the Android application package deployment. Some examples of files typically used as offline data are mobile map packages, runtime geodatabases, offline locators and network datasets, and tile packages.
Local offline data can be downloaded while the device has a network connection—for example when tile packages are generated from the device and downloaded, or when the "desktop pattern" is used to create mobile map packages and store them in a portal for download to the device. Alternatively, data can be copied to a device's internal storage (also known as "sideloading") using a tool such as the Android Debug Bridge (ADB) or deployed using an expandable memory slot. Copying to a device can be useful when files are prepared using ArcGIS Pro or ArcGIS Desktop and when deploying the same files to many devices.
Projection engine files
If your app is using grid-based transformations, deploy the required Projection Engine files to the device by copying (sideloading) them or downloading them directly onto the device.
ENC (electronic navigational charts) style directory
If your application displays EncLayer
, deploy the hydrography
directory, available for download from the downloads page (requires you to log in).
Deploying specialized symbols
You may need to deploy specialized symbols, such as military symbol dictionaries, for use with your ArcGIS Maps SDK for Kotlin app.
You have two options for including these symbols in your deployment.
- The ArcGIS for Defense group hosts the following ArcGIS Online items that contain .stylx files with military symbols. Use the support matrix to find and download the supported stylx file for your version of ArcGIS Maps SDK for Kotlin. Once downloaded, you can include the files in your app deployment. Logic in your app, of course, would be required to locate and use the included files as needed.
- Add logic to your app that prepares the app for offline use by downloading the files and storing them locally. You can access these resources when your user is online either by programmatically downloading them or accessing them as portal items, reading their contents, and storing them locally. The following code example shows how to access some of the hosted military symbol items.