This page provides details about enhancements in the 100.6.0 release of ArcGIS Runtime SDK for Java. 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 (requires sign-in).
This section describes new features and improvements.
You can now use an utility network with ArcGIS Runtime. Utility networks provide a comprehensive functional framework in ArcGIS for modeling utility systems such as electric, gas, water, storm water, wastewater, and telecommunications. It is designed to model all of the components that make up your system—such as wires, pipes, valves, zones, devices, and circuits—and allows you to build real-world behavior into the features you model. The utility network framework enables advanced out-of-the-box analytics and visualization for geographic location, network topology, or complex assemblies. For details about the capabilities included in 100.6, see Analyze a utility network.
Maps and scenes
Preplanned scheduled updates
This release introduces an optimization for the preplanned offline workflow using scheduled updates. In this scenario, web map authors can configure map areas to periodically update feature data on a regular schedule and stage those changes on the portal for distribution. Runtime apps that have taken those map areas offline can then simply check for updates and download the changes directly from the portal without having to perform expensive sync operations with the backing feature services. This workflow increases the scalability of working with offline maps since all users can retrieve updates to their map areas using the same set of downloads that are available from the portal without increasing load on backing feature services.
This optimization is only applicable if your app makes read-only use of offline map areas. If your app needs to perform offline editing of feature data in the map area, you should continue to utilize the existing preplanned workflow which syncs directly with feature services.
Close mobile map/scene packages
A new close() method has been added to Mobile Map Package and Mobile Scene Package to force close connections to the package. This releases any file locks for the data on disk thereby allowing apps to remove or change the underlying package file or directory. This is particularly helpful for garbage collected platforms where simply releasing references to the package object in the app does not guarantee that the object will be destroyed and any file handles it has will be closed. After closing the package, do not continue to use any objects (maps, scenes, layers, tasks, features, etc) that were retrieved from the package
Performance of Mobile map packages containing a large number of layers such as those that include Streetmap Premium data has been improved. In some cases the time taken to display the initial map data is 3 times as fast and uses 33% less memory as compared to the previous version.
Group layers in mobile map packages
Mobile map packages (.mmpk) now preserve group layers that are defined in a map authored in ArcGIS Pro. Group layers are no longer flattened into individual layers, and the group layer is visible in the layer list. Overrides affecting min/max scale, opacity, and visibility properties of a group layer are honored in a mobile map package. Support for group layers in web scenes and web scene packages was introduced in an earlier release; the current release brings full group layer support to mobile map packages as well.
ArcGIS Runtime now enables augmented reality experiences through a combination of low-level support in and open source toolkit components.
For details, see Display scenes in augmented reality.
The following ArcGIS Runtime features have been added:
- TransformationMatrixCameraController—A new camera controller has been added for positioning the scene view camera based on a transformation matrix, like the ones provided by ARKit and ARCore.
- SceneView rendering changes:
- ArcGIS Runtime now supports manually controlling the rendering of scene view content. Manual rendering gives you greater control of how often the scene is rendered and allows you to track and modify rendering performance. Manual rendering, which is opt-in, is designed to enable AR experiences by synchronizing scene view rendering with the rendering of content managed by ARKit and ARCore .
- ArcGIS Runtime now supports manually controlling the field of view of the camera in scene views. The field of view control allows you to control how much of the horizontal and vertical space of the scene is rendered. Support for setting the field of view was added to support AR scenarios, where it is important that the field of view of the physical camera on the device matches the field of view of the virtual camera in the scene.
- AR Toolkit—An ArcGIS Runtime toolkit available for iOS, Android, and .NET.
- Support for Apple's ARKit version 1 and Google's ARCore version 1.8. Google's list of supported devices.
Enhanced dictionary symbology
ArcGIS Runtime SDK now supports a new format of dictionary style file introduced by ArcGIS Pro version 2.4. This format uses Arcade for the logic to generate symbols and is therefore fully customizable. Use of the older format styles is supported but deprecated in this release. For more information about using custom dictionary symbols in ArcGIS Runtime, see the Display symbols from a style with a dictionary renderer topic in the developer guide. To create a custom dictionary style, refer to the Dictionary renderer toolkit project on GitHub.
Create and modify KML content
Previous releases supported reading and displaying KML content (.kml and .kmz files) from your local disk and from the web. This release enables you to create new KML content, or modify existing content. The following KML content types are supported for creating, editing, and saving to KML datasets:
- Placemarks (point, line, polygon)
- Folder and document containers
- Network link parameters
Creating and editing a KML file requires a Standard level license.
Exceptions to editing KML files
The following KML content types currently cannot be created, edited, or saved:
- Shared styles (Geometry, Placemarks, Overlays)
- Highlight Icon styles
- KML datasets with multiple root nodes
Custom parameters for WMTS and WFS requests
ArcGIS Runtime SDK now supports custom parameters for WMTS and WFS requests. Custom parameter properties now appear on the WmtsService, WmtsLayer, and WfsService classes. This support is consistent with ArcGIS Runtime's existing support for custom parameters on WMS requests in the WmsService class. Custom parameters are appended as key/value pairs to WMS, WMTS, and WFS requests such as GetCapabilities and GetTile. Setting custom parameters allow you to specify additional parameters to service request such as API keys or user credentials. See the API documentation of these classes for details.
Optimized scene layer loading pattern for desktop
Devices with adequate memory resources (such as desktops) employ a new scene layer loading pattern that provides more intuitive draw and navigation performance. Scene layers load and render more quickly with content nearest the camera loaded first and at the highest appropriate resolution. Initially, a coarse representation covering the full extent is loaded. This allows the camera to spin around and not see empty spaces. Finer detail is added progressively. Constrained-memory devices, such as mobile devices, are not affected by this enhancement.
A feature layer or a graphics overlay in your ArcGIS Runtime application can now support elevation offsets defined in a scene defined in ArcGIS Pro or the Scene Viewer. You can also read and modify the elevation offsets.
ThegetAltitudeOffset and setAltitudeOffset methods affect all features in a feature layer or all graphics in a graphics overlay. Classes that now have the property are:
The altitude offset property works with web scenes or scenes from a mobile scene package (.mspk). Units are in meters.
Point scene layers
Point scene layers in your ArcGIS Runtime applications now have additional functionality: your users can select a point and identify its attributes in a popup. Point scene layers provide fast, responsive display of point features in a 3D view based on scale, distance, and threshold parameters associated with a viewpoint. Point scene layers are generated from point feature layers and can be loaded from a web scene, mobile scene package, or directly from a service. Note that when a scene is shared as a web scene in ArcGIS Pro, any point feature layers present in the 3D Layers section of the Contents pane will be published as a scene service. Thus, publishing a point feature layer in a web scene automatically generates a point scene layer.
Supported 3D file formats
Supported 3D file formats are as follows:
- *.dae - Collada
- *.obj - WaveFront
- *.3ds - 3D Studios
- *.fbx - Filmbox
For a list of 3D file formats that were mentioned in previous releases but are now deprecated, see Deprecations section.
Ukrainian language support
Localized Directions returned by route task and closest facility task are now available in Ukrainian.
Runtime users can now take annotation data offline from a sync-enabled feature service. They can create annotation layers from ArcGIS feature tables contained in either a geodatabase or a feature service. Annotation features within an annotation layer are partitioned into annotation sublayers. Accessing the sublayers allows Runtime users to read the published metadata and manually toggle visibility of the sublayer.
- Applying a viewpoint constructed with a map scale now displays a different visible area in a scene view. In previous versions, a much larger scale value had to be provided to create a visible extent comparable to the same scale applied to a map view. A viewpoint constructed with a scale value now displays roughly the same area when applied to a map view or a scene view.
- Runtime will now use a default renderer when displaying various raster formats. This change improves display consistency when displaying raster data if a renderer is not specified.
- Selection for dictionary symbols works slightly differently at 100.6 than it did at 100.5. If a dictionary symbol has text, the text is now selected along with the rest of the symbol. This is a behavior change for existing Runtime users, and is similar to selection in ArcGIS Pro.
Support for Windows 7 is deprecated. The last release to support Windows 7 will be version 100.7.
Support for Windows 10 version 1703 is deprecated. With the 100.7 release, the minimum will be Windows 10 version 1709.
Support for SuSE12 is deprecated. With the 100.7 release, the minimum will be SuSE 15.
Support for Red Hat Enterprise Linux Server versions 7.0-7.3 is deprecated. With the 100.7 release, the minimum will be 7.4.
Support for building apps targeted for macOS 10.13 (High Sierra) is deprecated. With the 100.7 release, the minimum will be macOS 10.14 (Mojave).
Some 3D file formats used for 3D symbols are deprecated. The last release to support these formats is 100.6.0.
- Drawing Exchange Format *.dxf files
- Direct X *.x files
- Polygon file format *.ply files (Standard polygon library)
- Stereo lithography CAD *.stl files
- Industry foundation classes *.ifc files
- Blender *.blend files
Custom plugins for Gradle and Maven were delivered with the 100.5 SDK to automate obtaining the native libraries in your projects. The plugins are not delivered with the 100.6 SDK, because they are no longer necessary. The build.gradle andpom.xml files do not have a dependency on these plugins:
- BUG-000123552 An extruded line graphic fails to render in a scene view when exceeds a certain height.
- BUG-000123647 An access violation occurs in SceneView when enabling labels on graphics overlays..
- BUG-000121670 Graphics overlays with the visibility turned off are flashing with around 10 or more graphics overlay layers.
- BUG-000121802 Application crashes if the path location contains a Chinese character.
- Access violation calling SuggestAsync on a composite locator from a mobile map package. For more information see the GeoNet post, Access Violation In Runtime 100.5.
BUG-000123182 A point layer from a local geodatabase (GeodatabaseFeatureTable) fails to display when sharing the same ArcGISMap between two activities.
- BUG-000121927 The GraphicsOverlay.getGraphics().remove(graphic) function performs slower than the GraphicsLayer.removeGraphic(graphicId) function in ArcGIS Runtime for Java 10.2.4.
- BUG-000122050 The QueryFeaturesAsync method in ServiceFeatureTable class does not request M values for features.
- 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-000122389 LocalMapService.StartAsync throws an exception when a path to the map package contains spaces.
- BUG-000121666 Creating features with PolygonBuilder with projected coordinate system (for example, with WebMercator) does not work as expected in a SceneView.
- BUG-000121134 Feature layer labels render differently depending on whether the layer is part of the web map or not.
- BUG-000120751 A scene layer package created from OSGB data in ArcGIS Pro by the Create Integrated Mesh Scene Layer Package tool fails to display.
- BUG-000120894 Map packages with label expressions in Python do not render via Local Server.
- BUG-000120480 The Contour geoprocessing tool running as a local geoprocessing service in Local Server fails when the tool's input raster is selected from a raster file but not from a map layer.
- BUG-000120229 The ArcGIS Online web map feature does not sync to the preplanned area when the feature is moved out of the extent of the preplanned map area.
- BUG-000120165 MapView.SetViewpointAsync() returns a larger extent than specified.
- BUG-000119567 CountryCode and Category properties in the SuggestionParameters function do not work with the LocatorTask function from a mobile map package.
- BUG-000117828 The performance of Surface.GetElevationAsync() is not optimal when invoked initially. It improves with each invocation.
- BUG-000117556 Some graphics overlay labels may not always be displayed.
- BUG-000117177 Rendering extrusion for line features fails to work as expected in a 3D scene.
- BUG-000117102 Feature class used to create locator that has M-value does not populate with the value of Match_addr and Label.
- BUG-000116969 Setting SceneSymbolAnchorPosition.Origin does not work when the 3D model has an offset.
- BUG-000116792 The layers in a mobile map package created with ArcGIS Pro do not respect label stacking properties.
- BUG-000116356 Loading some mobile map packages may cause a crash.
- BUG-000116322 When consuming a vector tile package, the offset property of symbol layers is not honored.
- BUG-000116235 The SelectFeaturesAsync and QueryFeaturesAsync methods return more than one result even when tolerance is set to 0.
- BUG-000116234 The GetElevationAsync method returns a different elevation from a raster when compared to the Get Cell Value method in ArcMap.
- BUG-000116209 Labeling feature weights assigned to a feature class in ArcGIS Pro 2.2 mobile map package is not honored.
- BUG-000116022 Downloading the map area returns the error message "Unable to complete operation" when the web map contains an ArcGIS Server feature service using versioned data.
- BUG-000115855 Geometry does not return the M-value even if the Geometry.HasM property is true.
- BUG-000115750 Tile packages created from certain tiling schemes neither display nor provide any exception.
- BUG-000115711 ArcGISFeatureTable.QueryRelatedFeaturesAsync fails to return the related records data in some cases.
- BUG-000114021 Trying to delete a raster used by a raster layer causes an error.
- BUG-000110655 UniqueValueRenderer does not properly render a dynamic SublayerSource of a LocalMapService.
- BUG-000123710 The SceneView.ScreenToBaseSurface Method sometimes causes the application to freeze.
- BUG-000120490 The Raster To Polygon geoprocessing package (.gpk) fails to start as a local geoprocessing service when created from ArcMap 10.6.1 packaged from a geoprocessing tool result.
- BUG-000121574 A downloaded vector tile package does not contain any attribution.
- BUG-000121695 MapView.IdentifyLayersAsync applied to a layer with a DefinitionExpression results in poor performance.
- BUG-000115811 Blend renderer for scene view renders in a different color range than for map view.
- BUG-000123744 When a shapefile is added to a Local Server dynamic workspace, 32-bit Microsoft Excel launches 10 seconds slower.
- BUG-000115068 - The LegendInfo of Local Server based ArcGISMapImageLayer sublayers created from shapefiles is not updated to represent sublayer renderer symbology
- BUG-000121762 OpenStreetMap Vector Basemap displays large gaps between dashed lines for trail polylines on a high resolution display.
- BUG-000122693 Features from large shapefiles fail to render when the ArcGISMapImageSublayer.setLabelsEnabled() parameter is set to true.
- BUG-000120169 Large raster files (.tif) sometimes fail to load.
- BUG-000114932 When the map view is zoomed or panned, labels do not reposition to move in view as they do in ArcGIS Pro.