What's new in version 1.8

New Features

Migrating existing applications...

Migrating existing applications and projects to use the new API is relatively easy and straight-forward. Great attention has been given to preserving backward-compatibility and maintaining existing behavior where possible.

...From version 1.0

This section provide a comprehensive list of changes that have been made since version 1.0 of the API. Refer to this section if you are migrating your application from v1.0 to v1.8 Final.

XCode Project Changes

  • CoreText needs to be added to the project's Frameworks. This library is required because the API has added support for TextSymbols with international languages. Eventhough CoreText is only available on iOS 4.0 and later, you can still target devices running an older iOS version (as long as they meet the Device Requirements), in which case, the library won't be used at runtime. Note, this means that you will not be able to display TextSymbols with international languages on older iOS versions.
  • libstdc++.dylib needs to be added to the project's Frameworks. This library is required because the API now includes a native Geometry Engine. You may encounter the following build errors without this library:
    Build errors without libstdc++.dylib project reference
  • API resources such as images for the esri and bing logo, GPS location, etc have been consolidated into an ArcGIS.bundle. This bundle is installed under ${HOME}/Library/SDKs/ArcGIS/iOS.sdk/user/local/resources. It is automatically referenced by new projects created using the ArcGIS project templates. To use custom images instead of the ones provided with bundle, add the custom images to your project making sure they have the same name as the images in the bundle. Images in your project will take precedence over those in the bundle.

API Changes

  • Property yOffset and the y-coordinate value of the property hotspot on AGSPictureMarkerSymbol and AGSMarkerSymbol are now interpreted based on a Cartesian coordinate system. This is reverse of what it was previously. For example, a value of -5 would previously be interpreted as "above by 5 units", but now it is interpreted as "below by 5 units". To accommodate this change, you only need to reverse the sign of the y-coordinate value. X-coordinate values are interpreted as before. A value of -5 is interpreted as "left by 5 units".
  • Enum AGSQuerySpatialRelationship has been renamed to AGSSpatialRelationship
  • Enum value AGSAuthenticationTypeBasic has been renamed to AGSAuthenticationTypeHTTP
  • Property mapViewDelegate on AGSMapView has been deprecated. The delegate methods have been split between layerDelegate, touchDelegate, and calloutDelegate properties on AGSMapView. You should use these delegates instead.
  • Property classBreaks on AGSClassBreaksRenderer has been changed from type NSMutableArray to NSArray.

...From version 1.8 Beta

This section outlines only those changes that have been made since v1.8 Beta. Refer to this section if you have already migrated your application to v1.8 Beta and now need to migrate to v1.8 Final.

XCode Project Changes

  • CoreText needs to be added to the project's Frameworks. This library is required because the API has added support for TextSymbols with international languages. Eventhough CoreText is only available on iOS 4.0 and later, you can still target devices running an older iOS version (as long as they meet the Device Requirements), in which case, the library won't be used at runtime. Note, this means that you will not be able to display TextSymbols with international languages on older iOS versions.

API Changes

  • Property yOffset and the y-coordinate value of the property hotspot on AGSPictureMarkerSymbol and AGSMarkerSymbol are now interpreted based on a Cartesian coordinate system. This is reverse of what it was previously. For example, a value of -5 would previously be interpreted as "above by 5 units", but now it is interpreted as "below by 5 units". To accommodate this change, you only need to reverse the sign of the y-coordinate value. X-coordinate values are interpreted as before. A value of -5 is interpreted as "left by 5 units".
5/9/2012