iOS SDK Release notes | Urbi Documentation

Release notes

  • You can now set a cascaded appId in the key settings. This allows you to link the key not to a particular application, but to a group of applications with the same identifier pattern.
  • Updated the copyright design.
  • Fixed SDK operation for CarPlay.
  • When displaying markers using Marker, text labels do not overlap.
  • Fixed the display of the geolocation marker when a direction sensor stops providing data.
  • You can now add only one source of the current location (MyLocationMapObjectSource) to a Map object.
  • SDK now supports only iOS 13 or higher.
  • Information about traffic jams in regions is now updated regardless of the update of the SDK configuration file.
  • With the zoom level higher than 2, you now cannot move the map to display empty lanes at the top and bottom.
  • Added an Arabic voice package for the navigation.
  • Support of iOS version 12 is deprecated. Starting from the next version, SDK works only for iOS 13 or higher.
  • Fixes performance issues of layedId defined in MapObjectManager: now it impacts the display of clustered markers.
  • Fixed map rendering. Previously, it would freeze when a modal window is displayed above MapView.
  • Fixed map performance when the application is minimized.
  • Download styles again to ensure valid operation of dashed circles.
  • When dynamic objects are updated frequently (around 100 FPS), the map freezes.
  • Optimized re-rending of map frames after any changes.

  • Fixed the way traffic jams are displayed on the map depending on the zoom level.

  • Improved the smoothness of geolocation marker update.

  • Optimized and fixed map display for the latest iOS versions.

  • Fixed the behavior of the SimpleClusterObject.setIcon method during the first call.

  • Fixed clustering via MapObjectManager.withClustering that worked incorrectly with fractional values of minZoom and maxZoom.

  • Updated the company logo in the copyright and map snapshots.

  • Fixed the exception returned if corrupted styles are loaded into the map.

  • Updated the behavior of MapOptions.appearance: when MapAppearance.default is set, the light theme is used by default.

  • Improved the calculation of the distance for playing preliminary instructions for a maneuver: now lanes are considered.

  • Improved the playing of the final phrase in the navigation mode: now pedestrian route is considered.

  • Fixed an issue that prevented lane callouts from displaying the route direction.

  • Fixed the creation of lane callouts: now speed limits are not considered.

  • Fixed the display of callouts for bus lanes going straight with "No entry" sign for other vehicles.

  • Fixed the display of route suggestions:

    • Suggested better route is now not removed if a user explicitly declined switching to it.
    • Alternative routes are now removed from the map when the interchange with them is too far from the following position even if they can still be attracted.
    • Alternative routes that branch from the main route in the same point and are equally directed are now disregarded.
    • Suggestion of a better route is now revoked when the route is not considered a better one anymore after updating the traffic jam data for the route.
  • Fixed camera warnings: now notifications of camera dummies are not voiced.

  • Fixed the INavigationView behavior to display only the remaining part of the route when requested to display the full route.

  • Disabled cashing of FreeRoam tiles during navigation by default. This is done to reduce the number of backend requests.

  • Added styles for traffic lights.
  • Added immersive models of trees and buildings.
  • Added support of new lines of Moscow Metro: MCD-3 and MCD-4.
  • Optimized immersive models of trees.
  • Added a new model for displaying the current location marker.

For all types of Mobile SDK:

  • Styles must be downloaded again.

  • Changed the process of working with FollowController:

    • Removed createRawMyLocationController and createSmoothMyLocationController methods. Added the MyLocationController constructor for creating controllers of geolocation marker movements.
    • Removed FollowBearing.satellite and FollowBearing.magnetic values because now you do not need to specify the direction source. Added the FollowBearing.on value for enabling the following mode (the source is selected automatically).
    • Removed the FollowPosition.tilt field. Now you need to enable tilt following separately. Added a new CameraBehaviour constructor with a tilt parameter to enable following only the tilt.
    • Removed FollowValue.satelliteBearing, FollowValue.magneticBearing, and FollowValue.accuracy values. Instead, added the FollowValue.bearing value with automatic selection of the source.
    • Removed satelliteBearing, magneticBearing, and accuracy methods from the CustomFollowController interface. Added the CustomFollowController.bearing method instead.
    • Removed setClock, satelliteBearing, magneticBearing, and accuracy methods from FollowController. Added onAddedToMap, onRemovedFromMap, and bearing methods instead.
    • Removed the FollowController.nextTimestampChannel channel. Added FollowController.changedChannel instead.
    • Changed the signature of the FollowController.updateValues method.
    • Removed the PlatformLocationFollowController controller. Instead, added BearingFollowController and CoordinatesFollowController controllers for following the map direction and map position coordinates respectively.
    • Changed the constructor of the StyleZoomFollowController controller. Removed the StyleZoomFollowController.setAnimationDuration method.
    • Changed the constructor of the TiltFollowController controller. Removed TiltFollowController.setTilt and TiltFollowController.setAnimationDuration methods.
    • Replaced parameters of the FollowController.setThresholds with the typed ones.
    • Removed the FollowControllerClock class. Changed the type of the FollowController.setClock method parameter to timestamp.
    • Removed TransitionType. The MyLocationControlModel constructor does not take transitionType now. Removed the transitionType parameter from the CameraBehaviour constructor.
    • Removed MyLocationDirectionBehaviour. The MyLocationMapObjectSource constructor of a geolocation source does not take directionBehaviour now. Removed the MyLocationMapObjectSource.setDirectionBehaviour method.
  • Removed the BaseCamera.styleZoomToTiltRelation field.

  • Renamed the MagneticHeadingProvider class to HeadingProvider.

  • Constructors of Circle, Marker, Polygon, and Polyline are labeled as throws.

  • Removed the MapOptions.mapRendererType option and the MapRendererType enum. Now Metal is always enabled for map rendering.

  • Removed Circle.position and Circle.radius setters. Instead, added Circle.setPosition and Circle.setRadius methods that can throw exceptions.

  • Updated the Locale structure: now it is created based on separate language and region values.

  • Removed PackageManager and Package from the SDK Map build. The product size has reduced.

Additionally for the full version: