New In This Release

Local Navigation

Location-based services

Geocoding enhancements

The Locator class in the net.rim.device.api.lbs package has been deprecated, and replaced by new geocoding and reverse geocoding APIs. Using these APIs, you can perform geocoding and reverse geocoding requests asynchronously and synchronously. To initiate an asynchronous request, you must provide a ServerExchangeCallback implementation, otherwise the request is synchronous. The geocoding and reverse geocoding APIs are provided in the net.rim.device.api.lbs.maps.server and packages.

Back To Top

Dynamic mappable framework

The dynamic mappable framework allows you to create locations on a map, specify if a location needs to be updated, and re-render the map when the location is updated. For example, you can display the location of a BlackBerry® Messenger contact in near real-time on a map as the contact's location changes. The dynamic mappable framework is provided in the net.rim.device.api.lbs.maps.model package.

Back To Top

Styles framework

You can define styles for single mappable items or classes of mappable items using the Styles framework. You can also adjust the line edge (weight, opacity, and color), the fill (opacity and color), and the label (fill and font) for mappable items. The Styles framework is located in the net.rim.device.api.lbs.maps.view package.

Back To Top

Building block framework

You can create mappable objects that correspond to geospatial shapes such as polygons, polylines, images, lines, markers, and points using the Building block framework. Shapes (for example, images or polygons) are provided in the net.rim.device.api.lbs.maps.model package. Geospatial shapes which correspond to these shapes are provided in the net.rim.device.api.lbs.maps.model.geospatial package. You can use these shapes to do various things. such as display BlackBerry® Messenger profile pictures as markers for locations on a map.

Back To Top

Compass overlays

You can add a compass overlay to your application by using the CompassField class, which is provided in the net.rim.device.api.lbs.compass package. The CompassField provides a graphical representation of a compass to provide directional context (for example, in a mapping application, the compass displays where north is in relation to the BlackBerry® device user's current location). You can create an instance of CompassField and add it to a field manager, like other UI components in the BlackBerry® Java® SDK.

Back To Top

MapField and MapAction enhancements

The MapAction and MapField classes, which are provided in the net.rim.device.api.lbs.maps.ui package, provide new methods that allow you to perform specific actions on a map field. The classes support actions such as setting the center, zoom, and rotation level of a map field.

Back To Top

Retrieving the bearing between two locations

You can retrieve the compass initial bearing between two specified locations by using getBearing() method that is defined in the net.rim.device.api.gps.LocationInfo class. You must provide the geographic coordinates (latitude and longitude) for the starting and ending locations, and then invoke getBearing(), which calculates the angle (in degrees) between the two locations.

Back To Top


You can use the Geofence class to define geofenced areas and receive notifications when a BlackBerry® device user enters or leaves the specified area. A geofence is a virtual geographic area of interest that you can define by a radius around a location, or by coordinates that define a polygon for the location.

Your application must create an instance of a Geofence object, and implement GeofenceListener to receive notifications for geofencing events (when a user enters or exits geofenced areas). Each instance of Geofence is designed to process up to 20 monitored areas concurrently. Geofence is provided in the net.rim.device.api.location package.

Back To Top

Retrieving a bounding box

You can retrieve the mappable (that is, latitude and longitude-based) bounding box for a mappable item by using getBoundingBox(). The classes which implement the Mappable interface define this method. A mappable bounding box represents a rectangular area that a mappable item occupies on a map.

Back To Top

Departure time estimation

The Travel Time API is enhanced. You can now specify an arrival time, and request an estimated departure time. The Travel Time API is provided in the package, and can now request estimated departure and arrival times given your current location.

Back To Top
Next topic: Graphics

Was this information helpful? Send us your comments.