iOS SDK change log from version 2.5.1 to version 3.0.0

SKAddPackageResult enum

New value for synonyms

typedef NS_OPTIONS (NSInteger, SKAddPackageResult)
{
SKAddPackageResultSuccess = 0,
SKAddPackageResultMissingTxgFile = 1,
SKAddPackageResultMissingSkmFile = 1 << 1,
SKAddPackageResultMissingNgiFile = 1 << 2,
SKAddPackageResultMissingNgiDatFile = 1 << 3,
SKAddPackageResultMissingSynFile = 1 << 4,
SKAddPackageResultCannotEraseFile = 1 << 5
};

SKMapPackageDownloadInfo class

New property

/** The URL for the elevation files (.zip).
*/
@property(nonatomic, strong) NSString *elevationPackageURL;

SKMapSettings class

Removed deprecated property

/** Controls if the map POI icons are rendered on the map. Default value is YES. DEPRECATED: Use the poiDisplayingOption property for configuring the appearence of map POIs. For hiding all the POIs set the poiDisplayingOption property to SKPOIDisplayingOptionNone. For displaying all the POIs set the poiDisplayingOption property to SKPOIDisplayingOptionCity | SKPOIDisplayingOptionGeneral | SKPOIDisplayingOptionImportant.
*/
@property(nonatomic, assign) BOOL showMapPoiIcons DEPRECATED_ATTRIBUTE;

SKMapView class

Changed

/** Animates the center of the map to a certain location.
@param location The location to be centered.
@param duration The duration of the animation, in seconds.
*/
- (void)animateToLocation:(CLLocationCoordinate2D)location withDuration:(float)duration;

to

/** Animates the center of the map to a certain location.
@param location The location to be centered.
@param padding The optional padding.
@param duration The duration of the animation, in seconds.
*/
- (void)animateToLocation:(CLLocationCoordinate2D)location withPadding:(CGPoint)padding duration:(float)duration;

Changed

/** Sets the visible region of the map so that a provided coordinate bounding box will be visible.
@param boundingBox The bounding box to be fitted.
@param padding Padding in pixels width (from left and right of the screen), height (from top and bottom of the screen)
*/
- (void)fitBounds:(SKBoundingBox *)boundingBox withPadding:(CGSize)padding;

to

/** Sets the visible region of the map so that a provided coordinate bounding box will be visible.
@param boundingBox The bounding box to be fitted.
@param insets Insets in pixels for left, right, bottom and top of the screen.
*/
- (void)fitBounds:(SKBoundingBox *)boundingBox withInsets:(UIEdgeInsets)insets;

SKNavigationDelegate protocol

Changed

** Called when the speed warning status is updated. Thresholds for speed warnings can be set using the inCity, outsideCity members of the speedWarningThreshold property from the SKNavigationSettings object.
@param routingService The routing service.
@param speedWarningIsActive If YES, the speed warning is active. If NO, the speed warning is over.
@param instruction If the speedWarningIsActive is YES, _instruction_ contains the readable instruction string.
@param isInsideCity Indicates that the device is inside/outside a city.
*/
- (void)routingService:(SKRoutingService *)routingService didUpdateSpeedWarningToStatus:(BOOL)speedWarningIsActive withInstruction:(NSString*)instruction insideCity:(BOOL)isInsideCity;

to

/** Called when the speed warning status is updated. Thresholds for speed warnings can be set using the inCity, outsideCity members of the speedWarningThreshold property from the SKNavigationSettings object.
@param routingService The routing service.
@param speedWarningIsActive If YES, the speed warning is active. If NO, the speed warning is over.
@param instruction If the speedWarningIsActive is YES, _instruction_ contains the readable instruction string.
@param isInsideCity Indicates that the device is inside/outside a city.
@return If it's YES, the instruction will be played automatically.
*/
- (BOOL)routingService:(SKRoutingService *)routingService didUpdateSpeedWarningToStatus:(BOOL)speedWarningIsActive withInstruction:(NSString *)instruction insideCity:(BOOL)isInsideCity;

SKOfflinePackagesManager class

Changed

/** Download information ( required URLs ) for an offline map package code.
@param packageCode The package code (RO, DE, etc.) used to generate the package download info.
*/
- (SKMapPackageDownloadInfo *)downloadInfoForPackageWithCode:(NSString *)packageCode;

to

/** Download information (required URLs) for an offline map package code.
@param packageCode The package code (RO, DE, etc.) used to generate the package download info.
@param mapVersion The map version (for example "20160426") used to generate the wanted package download info. Use nil for current map version.
@return The download info for the given package and version.
*/
- (SKMapPackageDownloadInfo *)downloadInfoForPackageWithCode:(NSString *)packageCode forMapVersion:(NSString * _Nullable)mapVersion;

Added SKOneLineSearchSettings class

/** SKOneLineSearchSettings stores the input parameters for a one line search.
*/
@interface SKOneLineSearchSettings : NSObject
/** The connectivity mode of the search. The default value is SKSearchOnline. The SKSearchHybrid is not supported at this point.
*/
@property(nonatomic, assign) SKSearchMode searchMode;
/** The code of the country where the search is executed.
*/
@property(nonatomic, strong) NSString *countryCode;
/** The search term is used to filter the results. It should be empty for all the results.
*/
@property(nonatomic, strong) NSString *searchTerm;
/** The center location of the searched area. This is an optional parameter but it can help to return better search results
*/
@property(nonatomic, assign) CLLocationCoordinate2D coordinate;
/** A newly initialized SKOneLineSearchSettings.
*/
+ (instancetype)oneLineSearchSettings;
@end

SKPositionerService class

Added new method

/** Reports device heading in order to simulate the current heading. The positionerMode property needs to previously be set to SKPositionerModePositionSimulation. The course property of a CLLocation object can also be used as input.
@param heading The heading that will be used as current device heading.
*/
- (void)reportDeviceHeading:(CLHeading *)heading;

SKRouteSettings class

Removed deprecated properties

/** Indicates whether to filter/remove the alternatives that are too similar with the previous calculated ones. Two routes are considered similar if less than 10% of them are different. DEPRECATED: For configuring the route calculation mode of the alternative routes please see the documentation of the SKRouteAlternativeSettings class.
*/
@property(nonatomic, assign) BOOL filterAlternatives DEPRECATED_ATTRIBUTE;
/** The number of routes to be calculated, including alternatives. Setting this property to a value > 1 is enough for getting basic route alternatives. Default value is 1. DEPRECATED: Use maximumReturnedRoutes.
*/
@property(nonatomic, assign) NSUInteger numberOfRoutes DEPRECATED_ATTRIBUTE;
/** Route calculation modes for alternative routes, an array of SKRouteAlternativeSettings objects. If nil, default alternatives will be generated. DEPRECATED: Use alternativeRouteCalculations.
*/
@property(nonatomic, strong) NSArray *alternativeRoutesModes DEPRECATED_ATTRIBUTE;

SKRoutingService class

Added new method

/** Zooms the map so that all calculated routes are visible.
@param insets Contains information about the zooming insets for the route overview.
@param duration The duration of the animation in miliseconds. No animation will be performed if the value of this parameter is 0.
*/
- (void)zoomToAllRoutesWithInsets:(UIEdgeInsets)insets duration:(int)duration;

SKSearchResultType enum

Added new entry and rearranged others

typedef NS_ENUM (NSInteger, SKSearchResultType)
{
SKSearchResultCountry = 0,
SKSearchResultState = 1,
SKSearchResultRegion = 2,
SKSearchResultCity = 3,
SKSearchResultSuburb = 4,
SKSearchResultNeighbourhood = 5,
SKSearchResultHamlet = 6,
SKSearchResultZipCode = 7,
SKSearchResultStreet = 8,
SKSearchResultPOI = 9,
SKSearchResultHouseNumber = 10,
SKSearchResultWikiPoi,
SKSearchResultCountryCode,
SKSearchResultStateCode
};

SKSearchService class

Added new methods

/** Get texture id for a given feature id, used for mapping icons to search results.
@param featureId The feature id (category) of the search result.
@return Texture id
*/
- (NSInteger)getTextureId:(NSInteger)featureId;
/** Supports oneline search using the parameters provided by the oneLineSearchSettings.
@param oneLineSearchSettings Specifies the search settings.
@return The status of starting the search operation.
*/
- (SKMapSearchStatus)startOneLineSearch:(SKOneLineSearchSettings *)oneLineSearchSettings;

SKSearchServiceDelegate protocol

/** Called for a successfull one line search operation.
@param searchService The search service.
@param searchResults Contains the one line search results (a list of SKSearchResult objects).
*/
- (void)searchService:(SKSearchService *)searchService didRetrieveOneLineSearchResults:(NSArray *)searchResults;
/** Called for a failed one line search operation.
@param searchService The search service.
*/
- (void)searchServiceDidFailToRetrieveOneLineSearchResults:(SKSearchService *)searchService;