This release is designed to work with the v200.8.0 version of the ArcGIS Maps SDK for Swift. It includes the following new requirements, enhancements, and resolved issues.
Enhancements in 200.8
General
- Drop support for iOS 16 - iOS 16 is no longer supported by the ArcGIS Maps SDK for Swift.
- An untracked file is now used to store API keys for use with toolkit examples and tests. For more information, please see Configure API Key & Licensing and Configure App Secrets.
Authenticator
- Adds support for Identity-Aware Proxies (IAP). An Identity-Aware Proxy (IAP) is a security feature that enables organizations to manage access to their on-premises web applications and services based on user identity. Typically, it functions as a reverse proxy, acting as a gatekeeper to ensure that only authenticated and authorized users can access specific resources. The authentication process for IAP occurs within a web session using protocols such as OAuth, SAML, or OpenID Connect. During this session, security tokens and cookies are generated, which remain valid throughout the session until they are invalidated. This release adds support for Microsoft Entra Application Proxy.
init(promptForUntrustedHosts:oAuthUserConfigurations:)
is deprecated and replaced byinit(promptForUntrustedHosts:oAuthUserConfigurations:iapConfigurations:)
to support authenticating with IAP by optionally passing in configuration settings for the proxy.
- Adds
ArcGISAuthenticationChallengeType
which allows the authenticator to better decide which type ofArcGISCredential
should be created to handle the underlying authentication challenge. oAuthUserConfigurations
andiapConfigurations
are now public read-write properties to allow setting configurations more easily.
FeatureFormView
- The
FeatureForm
view adds support for viewing utility network associations. Associations model relationships between utility assets in the real world based on connectivity, containment, or structural attachment. - The view allows users to browse through associated features and return to previously viewed ones. The associations are filtered according to the settings described by the form's
UtilityAssociationsFormElement
configuration. No associations are displayed if the form doesn't contain the required settings. If the view is used without a form definition, all available associations are displayed without any filters.init(featureForm:)
is deprecated and replaced byinit(root:isPresented:)
.FeatureFormView
uses aNavigationStack
internally to support browsing utility network associations. The new initializer provides an isolated navigation context for the feature form.
- Browse utility network associations in a feature form through the
UtilityAssociationsFormElement
. editingButtons(_:)
is added to control the visibility of new built-in Save and Discard buttons.navigationDisabled(_:)
is added to prevent users from navigating to other associations.onFeatureFormChanged(perform:)
andonFormEditingEvent(perform:)
are added to allow receiving change events from the form.- The feature form might change when navigating through the associations in a
UtilityAssociationsFormElement
. - You can run actions based on the form editing events, such as saving and discarding edits.
- The feature form might change when navigating through the associations in a
OfflineMapAreasView
- Fixes a crash when attempting to re-download a deleted preplanned map area while offline.
- Fixes a bug that stops the on-demand workflow from downloading an area. When the view first appears and the extent selector isn't moved, if the download button is tapped, the view behaved incorrectly.
- Fixes a bug when using the view in certain offline situations, the view doesn't show the "No Internet Connection" message.
- Changes the "Delete Map Area" button to "Remove Download" for ahead-of-time and "Delete Download" for on-demand workflows, to better reflect that the actions delete the downloaded data for the map area.
PopupView
- The
PopupView
adds support for viewing utility network associations. Associations model relationships between utility assets in the real world based on connectivity, containment, or structural attachment. - The view allows users to browse through associated features and return to those previously viewed. The associations are filtered (e.g., by assembly layer) according to the settings described by the form's
UtilityAssociationsPopupElement
configuration and presents results in collapsible groups by layer, table, or subtype. The view shows relevant association details - such as connected terminals or fraction along an edge - and supports navigation to the popup of an associated feature, whether spatial or non-spatial, with a back button to return to the previous view. It allows users to exit all associations at once, returning to the original feature, and only display associations that are currently available on the map.init(popup:isPresented:)
is deprecated and replaced byinit(root:isPresented:)
to better support navigating between associated features.PopupView
uses aNavigationStack
internally to support browsing utility network associations, and the new initializer provides an isolated navigation context for the popup view.
header(_:)
modifier is deprecated. With the new navigation context, the view owns and manages its own navigation stack, so there's no longer support for hiding the header.showCloseButton(_:)
modifier is deprecated. With the new navigation context, the view decides whether or not to show the close button by theisPresented
initializer parameter.onPopupChanged(perform:)
is added to support custom actions when browsing between popups associated via aUtilityAssociationsPopupElement
.