This page provides details about enhancements in the 100.7 release of ArcGIS Runtime SDK for Android. It also lists this release's deprecations, resolved issues, and known issues. You can view release notes for past SDK versions by scrolling to the bottom of this page or by downloading past versions of this guide (in PDF format) from the downloads page.
Enhancements
This section describes new features and improvements (what's new).
Utility network
Utility network functionality has been greatly enhanced in this release. You can now trace your electric circuits, and gas and water systems using upstream, downstream and subnetwork traces. Set numerous trace configuration options to enhance and fine-tune all of these traces. In addition, your users can now query the contents of a network container, such as a switch cabinet or regulator station, using association queries. Finally, using the new subtype feature layer, you can now efficiently display different asset groups within a single feature class.
Maps and scenes
New raster types as offline elevation sources
With ArcGIS Pro 2.5 you can create mobile scene packages that utilize a range of raster types as elevation sources within a scene. Use these packages to take your scenes offline. With this release you do not need to unpack packages that contain raster data.
Custom styles available with vector tiles in a mobile map package
With ArcGIS Pro 2.5 you can create mobile map packages that include vector tile layers along with their own custom style. This release of ArcGIS Runtime adds support for displaying vector tile layers using the custom style included in the package.
Offline routing with a scene
With ArcGIS Pro 2.5 you can create mobile scene packages that contain transportation networks. You can now use these packages with ArcGIS Runtime to perform routing analysis entirely offline in a scene.
Map background color
A map's background color is now honored when displaying maps in a map view. This color will be displayed in transparent areas of the map as well as areas where there is no basemap or operational data. The background color can be defined programmatically or specified while creating webmaps and mobile map packages.
Drape 2D markers on a surface
Rather than always being billboarded, 2D markers can now be draped on the ground on a 3D surface when drawn in dynamic rendering mode. This matches the existing behavior of lines and polygons.
MrSID performance improvement
Display times are considerably faster when initially displaying and interacting with MrSID raster datasets at this release.
Closest Facility and Service Area inputs
Additional properties have been added to the Facility
and Incident
classes to help model and accurately locate moving features used as inputs. These properties are used to describe the speed, bearing, bearing tolerance, and latency for an input.
Feature table performance improvements
Performance of Feature
, Service
, and Wfs
has been improved, in some cases by up to 65%. This applies to the initial population and subsequent navigation for Service
and Wfs
when using On Interaction Cache or On Interaction No Cache feature request modes, as well as the manual population of these tables if using Manual Cache mode with calls to populate
. It also applies to the insertion of large numbers of features into Feature
.
Symbology
Model scene symbol support for glTF
Model scene symbols now support glTF 2.0, a standardized file format for describing 3D objects. Model symbols can be created from .glTF or .glb files (a binary form). See the glTF Overview for more information about the glTF 2.0 specification.
Support for v3.0 dictionary styles
This release of ArcGIS Runtime adds support for version 3.0 of the ArcGIS dictionary style. This is the latest version used by ArcGIS Pro 2.5.
Visible scale range for symbols
ArcGIS Runtime now honors the visible scale range for symbols when displaying maps from mobile map packages. This is useful to limit the amount and type of data displayed at different map scales. You can use ArcGIS Pro to define the scale range for symbols in a Unique Value or Class Breaks renderer of a feature layer.
Improved support for visual variables with 3D Symbols
Model scene symbols now support size and rotation from visual variables along a user-defined axis. Geographic and arithmetic rotation from visual variables is supported along the heading axis. Color and size from visual variables are now supported on 3D primitive marker symbols, such as cube, cylinder, etc.
Create and modify KML screen overlays
Previous releases introduced the creation and modification of certain types of KML content, such as placemarks and ground overlays. This release adds support for creating, editing, and saving screen overlays (Screen
) within KML datasets. API additions comprise:
- A constructor for
Screen
Overlay - Read-write properties for color, icon, and draw order on
Screen
Overlay - New properties on
Screen
to support positioning, sizing, and rotating screen overlaysOverlay
Augmented reality
The AR Toolkit now allows you to clip the contents of a scene by setting the clipping
property. This allows you to build more realistic table-top experiences where you can limit the 3D content being displayed to the surface upon which it is placed, and also helps improve the performance of full-scale experiences by prioritizing the content that is nearby over data that may be far away.
Licensing enhancements
With ArcGIS Runtime 100.7, you can now unlock Standard and Advanced license levels and the Analysis extension when using the User authentication licensing mechanism with ArcGIS Online or ArcGIS Enterprise 10.8 or higher. Previously these license entitlements were only available using a license string.
API changes
Methods return DRAPED_BILLBOARDED
The enum value Layer
has been deprecated. Any methods that used to return Surface
now return Surface
, for example ArcGIS
. You should change any code that expects Surface
to use Surface
instead.
Behavior changes
-
Utility Network license extension—Starting with ArcGIS Runtime 100.7 and ArcGIS Enterprise 10.8, Utility Network capabilities now require an explicit Utility Network license extension. This extension can be unlocked using a Utility Network license string, or a user that has been assigned a Utility Network user type extension.
-
When you take a webmap offline you can navigate between the map's min and max scale. This scale range is now specified by the original webmap (either defined by the service or the basemap layer). Previously, this scale range was limited by levels of detail downloaded when taking the map offline.
-
Chrome Custom Tabs—The
Default
now uses Chrome Custom Tabs by default in order to prompt users for credentials for OAuth authentication. This provides a better user experience than prompting for credentials in an external browser window. If you still prefer prompting for OAuth credentials in an external browser window, you can disable Chrome Custom Tabs withAuthentication Challenge Handler Default
.Authentication Challenge Handler.set Chrome Custom Tabs Enabled -
androidx
dependency—With the support for Chrome Custom Tabs in theDefault
a new transitive dependency of androidx.browser:browser:1.0.0 was introduced. This dependency gets automatically configured when you reference theAuthentication Challenge Handler arcgis-android
library from Bintray in your gradle build script. If your project still depends on the Android Support libraries, which are no longer supported by Google, you will run into compile or runtime issues with the androidx library. You will need to migrate your project to androidx. -
Gson runtime dependency—The
gson
transitive dependency is now required only at runtime, not at compile time. This will only have an impact on your project if you are usinggson
dependencies in your own code and you don't havegson
added explicitly in your Gradle build script. In this case you might be seeing compile errors such as "error: package com.google.gson does not exist". This can be fixed by adding the `gson
` dependency explicitly to your Gradle build script:Use dark colors for code blocks Copy dependencies { implementation "com.google.code.gson:gson:2.8.5" }
Deprecations
-
Support for Android API level 19 (Android 4.4, KitKat) is deprecated. A minimum of API level 21 (Android 5.0, Lollipop) will be required at the next release.
-
Support for Windows 7 SP1 is deprecated. A minimum of Windows 10 version 1803 will be required at the next release.
-
Support for Windows 10 version 1709 is deprecated. A minimum of Windows 10 version 1803 will be required at the next release.
-
In addition to being billboarded, 2D marker symbols displayed in a scene can now be draped on the ground to match the behavior of lines and polygons. This is supported for dynamic rendering, allowing you to move and rotate the symbols at sub-second intervals. To support this change, the
DRAPED
enum value ofSurface
is deprecated. Use eitherPlacement DRAPED
or_BILLBOARDED DRAPED
instead._FLAT -
The
Portal
property has been deprecated. The preferred way to obtain license information for a member is by using the newInfo.license Info Portal.fetch
method. This method returns ArcGIS Runtime license entitlements of members in ArcGIS Online and ArcGIS Enterprise 10.8, and is backwards-compatible with older versions of ArcGIS Enterprise.License Info Async() -
Raster data can now be read directly from a mobile map/scene package without the need for it to be unpacked. You do not need to check whether a package can be read directly. The
is
method on theDirect Read Supported Async Mobile
andMap Package Mobile
have been deprecated. From this version they will always return a value of true. Since this method is no longer required, it can be removed from your calling code along with any subsequent use ofScene Package unpack
method.Async
Issues resolved
- ENH-000124453 Provide the ability to display a mobile map package and respect the visible scale range set for each symbol class in ArcGIS Pro for that mobile map package.
- BUG-000126697 Application crashes when attempting to load a certain mobile map package (.mmpk).
- Callout appears "collapsed" if it was initially hidden.
- BUG-000126144 Crash in Map_renderer::Labelable.
- BUG-000124577 Poor performance with large MrSID rasters.
- ENH-000115312: Clarify and improve the documentation for requirement and approaches for offline preplanned workflow.
- BUG-000120409 WMTS service does not load if the tile matrices of the service in the GetCapabilities file are not in sequential order.
- BUG-000109943 When creating the points, if the coordinate value is lower than decimal point third place, the raster is added to the map with an unexpected rendering result.
- BUG-000122510 Selecting features on a feature layer using featureLayer.SelectFeaturesAsync() uses the geometry of the polygon extent rather than the geometry of the polygon itself when querying from an event listener.
- BUG-000115811 Blend renderer for scene view renders in different color range than for map view.
- ENH-000120897 Support draped mode for symbols in dynamic mode 3D.
- BUG-000126415 Application crashes when rendering labels with query with the EXC_BAD_ACCESS error
- BUG-000126467 Display fails for online and synced offline annotation layers with certain spatial reference characteristics
- BUG-000125578 The
Label
method returns an empty symbol value.Definition. To Json() - BUG-000123182 A point layer from a local geodatabase (GeodatabaseFeatureTable) fails to display when sharing the same ArcGISMap between two activities.
- BUG-000126477 Logging in with UserCredential fails when the username has one backward slash e.g. 'cc\user1'
- BUG-000123182 A point layer from a local geodatabase (GeodatabaseFeatureTable) fails to display when sharing the same ArcGISMap between two activities.
Known issues
- BUG-000127070 The
WG
spatial reference (WKID 104016) is no longer recognized, and data or services using this WKID may fail to load. As a workaround, the EPSG replacement codeS 1984 ( Transit) 8888
can be used instead. - BUG-000125249 A small outline added to graphics when NavigationConstraint is set to none.
- BUG-000119908 Unable to move features drawn with the SketchEditor freehand tool.
- BUG-000124688 The RouteTask.setCredential method is not applying the credential to service requests.
- BUG-000117567 Application crashes when map loads on a Xiaomi Redmi 6 device.
- BUG-000126426 MapView.identifyLayerAsync does not return results from a map service containing a large number of layers.