iOS SDK change log from version 3.1.0 to version 3.2.0

Change Log

New features:

  • The FCD property has been moved to SKMapsService and it could be turned off from SDK.

Improvements:

  • Flag required in order to receive GPS updates as frequent as possible
  • Added support for both CLLocation and CLLocationCoordinate2D for polyline's vertex type

Fixed bugs:

  • CalloutView is not properly displayed when the map display mode changes from 2D to 3D and vice versa
  • Wrong heading for CCP and map view during a navigation
  • Elevation data is missing on first route calculation

SKRoutingService

Changed

/** Starts route calculations. The routingDelegate will receive calculation status notifications.
@param route Stores route calculation settings.
@param dynamicReroutingProfile If set to YES, a rerouting will be performed from the last matched position.
*/
- (void)calculateRoute:(SKRouteSettings *)route useDynamicReroutingProfile:(BOOL)dynamicReroutingProfile;

to

/** Starts route calculations. The routingDelegate will receive calculation status notifications.
@param route Stores route calculation settings.
*/
- (void)calculateRoute:(SKRouteSettings *)route;

SKPositionerService

Added new property

/** The value for triggering movement events. Use this to set the minimum update distance.
*/
@property(nonatomic, assign) CLLocationDistance movementThreshold;

SKPolyline

Changed

/** An array of CLLocation objects. Each location represents a vertex of the polyline.
 */
@property(nonatomic, strong) NSArray * coordinates;

to

/** An array of CLLocation objects. Each location represents a vertex of the polyline. This array will be used only if the polyline is instantiated with [SKPolyline polyline].
 */
@property(nonatomic, strong, readonly) NSArray<CLLocation *> *locations;

Added new method

/** Add a CLLocation object to the existing array of locations for this polyline.
 @param location The CLLocation object that needs to be added.
 @return Success / failure of adding the CLLocation object.
 */
- (BOOL)addLocation:(CLLocation *)location;

Added new method

/** Replace the existing array of locations.
 @param locations An array of CLLocations objects.
 @return Success / failure of replacing the existing array of locations with the new one given as parameter.
 */
- (BOOL)addLocations:(NSArray<CLLocation *> *)locations;

Added new method

/** Add a CLLocationCoordinate2D object to the existing array of coordinates for this polyline.
 @param coordinate The CLLocationCoordinate2D pointer that needs to be added.
 @return Success / failure of adding the CLLocationCoordinate2D pointer.
 */
- (BOOL)addCoordinateWithLatitude:(CLLocationDegrees)latitude longitude:(CLLocationDegrees)longitude;

Added new method

/** Use this block to get the polyline coordinates as float (lat, lon).
 @param enumerationBlock A block to execute when the coordinates of a polyline are required.
 */
- (void)enumeratePolylineCoordinatesUsingBlock:(void (^)(CLLocationDegrees latitude, CLLocationDegrees longitude))enumerationBlock;

Changed

/** A newly initialized SKPolyline.
*/
+ (instancetype)polyline;

to

/** A newly initialized SKPolyline. Using this initializer, each vertex of this polyline must be of type CLLocation.
 @return A newly initialized SKPolyline.
 */
+ (instancetype)polyline;

Added new method

/** A newly initialized SKPolyline. Using this initializer, each vertex of this polyline must be of type CLLocationCoordinate2D.
 @return A newly initialized SKPolyline.
 */
+ (instancetype)polylineCoordinate2D;

SKMapsService

Added new property

/** Enables the recording of floating car data. By default is NO.
 */
@property(nonatomic, assign) BOOL enableFCD;

Added a new property

/** The map base URL that the SDK connects to.
 */
@property(nonatomic, strong) NSString *mapURL;

Added a new property

/** The name of the version file the SDK uses.
 */
@property(nonatomic, strong) NSString *versionFile;