Monday, April 30, 2007

Location-Based Services

What Are Location-Based Services?

Location-based services (LBS) are applications that leverage the user's physical location to provide an enhanced service or experience. Location awareness can be used, for example, for navigation and mapping, workforce tracking, finding points of interest, and getting weather information. It presents a compelling new business opportunity for application developers, operators, and content producers. Location awareness differentiates mobile applications from traditional PC and wired Internet services.

The S60 platform offers developers easy-to-use APIs and ready-made user interface components to make mobile applications location-aware. Additionally, starting with S60 3rd Edition, the Location Acquisition API is also supported via JSR-179, the Location API for the Java™ 2 Platform, Micro Edition (J2ME™).

From S60 3rd Edition, Feature Pack 2 onwards, Map and Navigation Framework is provided for easy map data access, creating lucrative new business opportunities for third-party applications.

To learn more how you can capitalize on location-aware applications, please take a look at our LBS White Paper.

The following table provides you an overview of the availability of LBS features in different platforms and devices.

Platform

LBS Features

Featured Devices

S60 2nd Edition,
Feature Pack 1

Support for MT-LR Privacy

Nokia 7610

Nokia 6670

Nokia 3230

Nokia 6260

S60 2nd Edition,
Feature Pack 2

Support for MT-LR Privacy,
Location Acquisition API

Nokia 6630

Nokia 6680

Nokia 6681

Nokia 6682

S60 2nd Edition,
Feature Pack 3

Same as in FP2

Nokia N70

Nokia N72

Nokia N90

S60 3rd Edition

Same as in S60 2nd Edition, FP2 and FP3

Location Acquisition API (updated),
Landmarks API,
Landmarks Search API,
Landmark Database Management API ,
Landmarks UI Add/Edit API,
Landmarks UI Selector API,
Satellite Info API,

JSR-179

Nokia 3250

Nokia 5500

Nokia E50

Nokia E60

Nokia E61

Nokia E62

Nokia E70

Nokia N71

Nokia N73

Nokia N75

Nokia N80

Nokia N91

Nokia N92

Nokia N93

S60 3rd Edition Feature Pack 1

Same as in S60 2nd Edition, FP2 and FP3

Location Acquisition API (updated),
Landmarks API,
Landmarks Search API,
Landmark Database Management API ,
Landmarks UI Add/Edit API,
Landmarks UI Selector API,
Satellite Info API,

JSR-179

Nokia N95, Nokia E90 Communicator

Java™ 2 Platform, Micro Edition (J2ME™).

Java Location API (JSR-179)

Nokia 6265

Nokia 6265i

Nokia 6165

Nokia 3250

Nokia E60

Nokia E61

Nokia E70

Nokia N71

Nokia N80

Nokia N91

Nokia N92

Series 80
2nd Edition

Location Acquisition API

Nokia 9300

Nokia 9300i

Nokia 9500

Other

Support for MT-LR Privacy

Location Acquisition API,
Landmarks API,
Landmarks Search API

Nokia 7710

Supported location technologies

Technology

Devices

Integrated GPS Nokia N95, Nokia E90 Communicator

Bluetooth GPS (external)

Nokia 6265

Nokia 6265i

Nokia 7610

Nokia 6670

Nokia 3230

Nokia 6260

Nokia 6630

Nokia 6680

Nokia 6681

Nokia 6682

Nokia N70

Nokia N90

Nokia N92

Nokia 3250

Nokia E60

Nokia E61

Nokia E70

Nokia N71

Nokia N80

Nokia N91

Nokia 9300

Nokia 9500

Nokia 7710

Network-based positioning

Nokia 3250

Nokia E60

Nokia E61

Nokia E70

Nokia 7710

What's New in S60 3rd Edition - the Landmark APIs

A landmark is a representation of a geographical location and thus landmarks, or Points-Of-Interests (POIs) as they are also known, are an integral part of almost any location-aware application. The new landmark functionality in S60 3rd Edition enables applications that allow end users to create landmarks for their favorite places, send landmarks to their friends, navigate to a landmark, and of course to manage their collection of landmarks.

S60 3rd Edition includes a dedicated application for the centralized management of user landmarks. Thus it is not necessary for the application developers to put their effort in constructing such a system. Instead, developers are free to concentrate on how they would like to use landmarks in their own applications.

As you can observe from the preliminary screenshots, the user can access landmarks either directly or hierarchicly via categories.

To learn how to take advantage of landmarks in your application, please have a look at the Landmarks API, the Landmarks Search API, the Landmarks Database Management API, and the related example application source code. JSR-179 can be used to access landmarks from Java MIDlets.

See also the Landmarks Exchange Format Specification for details about how the landmarks can be represented in XML format and as such exchanged between mobile devices (through local connectivity) or between content providers and their mobile users (for example, through Web sites). See the Landmarks Exchange Format XML Schema for automated landmark files validation.

What's New in S60 3rd Edition - the Landmarks UI Add/Edit Component API

If your application creates new landmarks, it is likely that your application will need to prompt the end user for some additional information about the landmark, for example, how he or she would like to name or categorize the landmark. This usage scenario is likely to be so common that we included a ready-made UI component in S60 3rd Edition to do just that. The component also does the coordinate acquisition via the Location API.

You can also use the component in view only mode if you wish to show the details of a certain landmark to the end user and want to avoid the possibility of the end user modifying the landmark in any way. To learn more about this ready-made UI component, please have a look at the Landmarks UI Add/Edit API and the source code of the related example application in the S60 3rd Edition SDK.

What's New in S60 3rd Edition - the Landmarks UI Selector Component API

Many times your application will need the end user to indicate one or more landmarks for you, for example, for your application to show the indicated landmark(s) on a map or provide navigation guidance to them. To help you with that, S60 3rd Edition includes a ready-made UI component that you can use to prompt the end user for one or more landmarks or for one or more landmark categories.

Simply launch the UI component and you will get the landmarks or categories selected by the end user as return values. The UI component takes care of all the required end-user interaction. For more details, please see the Landmarks UI Selector API and the source code of the related example application.

What's New in S60 3rd Edition - the GPS Satellite View

Every decent location-aware application has a GPS satellite view, right? Now wouldn't it be a drag if every developer would need to make their own satellite view? And wouldn't it be a pain for end users to try to cope with different-looking views that are supposed to depict the same thing, the availability of the GPS satellites?

To answer these questions, S60 3rd Edition offers developers a ready-made UI component that applications can use to display GPS satellite availability in a clear and coherent way. To learn how easy it is to embed the satellite view into your application, please have a look at the Satellite Info API and the source code of the related example application.

Make Your Application Location-Aware - Now and with Ease

The Location Acquisition API enables native Symbian OS applications to determine the current location of the handset. This API provides easy access for determining a user's current location, independent of the positioning technology being used. This means that applications can utilize all available positioning technologies, such as Bluetooth Global Positioning System (GPS) accessories and network-based positioning, via a single API.

To make your mobile application location-aware, more information is available in the Location Acquisition API and the source code of the related example applications.

Testing Made Easy

Developing location-aware software can be tedious if you need to transfer your application to a mobile device and start walking or driving around to test the effects of your latest changes. To overcome this problem, the S60 platform allows you to create a text file from which the positioning system will fetch coordinates, thus simulating the device moving along the given path.

First prepare a simulation data file. For details, please take a look at the Simulation PSY User Guide.

Then tell the positioning system the location of your simulation data file. In S60 releases prior to 3rd Edition, this happens with a separate SimPsyConfigurator application that is available in the application grid.

Starting from S60 3rd Edition, you can set the simulation data file from the settings of the Simulation positioning method.

Also make sure that the Simulation positioning method is the selected positioning method when testing. You can check and alter this setting using the Location Settings application.

For more information, please have a look at the Simulation PSY Configurator User Guide and the Simulation PSY User Guide.

Handset Support for Network-Resident LBS

Starting from S60 2nd Edition, Feature Pack 1, MT-LR Privacy messages from network-resident LBS applications are supported. MT-LR is an acronym for Mobile Terminated Location Request and is also known as LCS Location Notification. These messages let the device owner decide if a network-resident LBS application, such as a weather service, may use the device’s location to provide the service requested by the device owner. For more information on the role of LCS Location Notification in Location Services, please refer to 3GPP TS 23.271 (or 03.71). For signalling protocol level information of LCS-LocationNotification, please refer to 3GPP TS 24.030 (or 04.30)."

AGPS Measurement Engine Interface (MEIF)

The AGPS Measurement Engine Interface (MEIF) Specification describes a standard interface that can be used in a setup where the measurement and position-calculation parts of the GPS or AGPS are separated into different devices that can be implemented separately. For more information, see the MEIF Specification description.

Tools

S60 Platform SDK's for Symbian OS, for C++
S60 Platform SDK for Symbian OS, for C++ allows C++ developers to quickly and efficiently run and test applications for devices that are compatible with the S60 Platform.

Series 80 Platform SDK's for Symbian OS, for Java
The Personal Profile SDK is the kit for developers creating Java™ Personal Profile applications for Nokia platform devices. The product consists of a phone emulator, application programming interfaces (APIs), documentation, and examples.

Series 80 Platform 2.0 SDK for Symbian OS, for MIDP enables Java™ 2 Platform, Micro Edition (J2ME™) application development for devices based on Series 80 Platform 2.0, and is compatible with the Nokia 9300 smartphone and Nokia 9500 Communicator.

Nokia Prototype SDK 2.0 for Java™ 2 Platform, Micro Edition
Nokia Prototype SDK 2.0 for J2ME™ enables developers to quickly and efficiently run and test applications for devices compatible with the Series 40 Platform, the Series 60 Platform, and the Series 80 Platform, as well as for the Nokia 7710 widescreen smartphone, before the final SDKs become available.

Documents

16-Apr-2007

Series 40 Platform: Introductory White Paper v2.2
This document provides an overview of the Series 40 platform and introduces Java™ technology and media development for it.

03-Apr-2007

C++ Developer's Library (online)
The C++ Developer's Library is an integrated package for developers wishing to develop S60 C++ applications. This first version focuses on getting started information, application framework and UI. The library also contains the complete S60 API reference and links to the Symbian OS online library, as well as to code examples and documents available on Forum Nokia. The library describes S60 3rd Edition and S60 3rd Edition FP1 implementations of the C++ technology. The library is available in three formats, this is the online version. We recommend that you use Mozilla Firefox or Netscape to view the library. There may be performance issues when using Microsoft Internet Explorer.

03-Apr-2007

C++ Developer's Library (stand-alone)
The C++ Developer's Library is an integrated package for developers wishing to develop S60 C++ applications. This first version focuses on getting started information, application framework and UI. The library also contains the complete S60 API reference and links to the Symbian OS online library, as well as to code examples and documents available on Forum Nokia. The library describes S60 3rd Edition and S60 3rd Edition FP1 implementations of the C++ technology. The library is available in three formats, this is a stand-alone version. Extract the .zip file to any folder on your computer, and click eclipse.exe to start the application.

03-Apr-2007

C++ Developer's Library (Eclipse plug-in)
The C++ Developer's Library is an integrated package for developers wishing to develop S60 C++ applications. This first version focuses on getting started information, application framework and UI. The library also contains the complete S60 API reference and links to the Symbian OS online library, as well as to code examples and documents available on Forum Nokia. The library describes S60 3rd Edition and S60 3rd Edition FP1 implementations of the C++ technology. The library is available in three formats, this version can be integrated into the Eclipse help.

06-Feb-2007

Java™ ME Developer's Library v1.2 (Online)
This Developer's Library is a complete resource package with introductory, getting started, tutorial, and API level information for developers wishing to use the S60 or the Series 40 platforms for developing mobile Java applications or services. The library describes S60 3rd Edition, FP1 and Series 40 3rd Edition, FP2 implementations of the Java technology and API specifications. The information is to a large extent valid also for earlier platform releases (the differences are described in the Implementation notes section). This updated version of the library includes, for example, new Developer's Guides for Advanced Multimedia Supplements API, SATSA-PKI API, and SATSA-APDU API. The library is published in three formats. This is an online version.

06-Feb-2007

Java™ ME Developer's Library v1.2 (Stand-alone)
This Developer's Library is a complete resource package with introductory, getting started, tutorial, and API level information for developers wishing to use the S60 or the Series 40 platforms for developing mobile Java applications or services. The library describes S60 3rd Edition, FP1 and Series 40 3rd Edition, FP2 implementations of the Java technology and API specifications. The information is to a large extent valid also for earlier platform releases (the differences are described in the Implementation notes section). This updated version of the library includes, for example, new Developer's Guides for Advanced Multimedia Supplements API, SATSA-PKI API, and SATSA-APDU API. The library is published in three formats. This is a stand-alone, downloadable version.

06-Feb-2007

Java™ ME Developer's Library v1.2 (Eclipse plugin)
This Developer's Library is a complete resource package with introductory, getting started, tutorial, and API level information for developers wishing to use the S60 or the Series 40 platforms for developing mobile Java applications or services. The library describes S60 3rd Edition, FP1 and Series 40 3rd Edition, FP2 implementations of the Java technology and API specifications. The information is to a large extent valid also for earlier platform releases (the differences are described in the Implementation notes section). This updated version of the library includes, for example, new Developer's Guides for Advanced Multimedia Supplements API, SATSA-PKI API, and SATSA-APDU API. The library is published in three formats. This version can be integrated into the Eclipse help.

28-Nov-2006

AGPS Measurement Engine Interface (MEIF) License Agreement
The AGPS Measurement Engine Interface (MEIF) Specification describes a standard interface that can be used in a setup where the measurement and position-calculation parts of the GPS or AGPS are separated into different devices that can be implemented separately. This agreement grants a license to utilize AGPS MEIF.

07-Nov-2006

S60 Platform: BLID Application Satellite Info API Specification v1.1
This updated document specifies the BLID Application Satellite Info API, which is used to indicate satellite data availability and quality. The interface basically displays a dialog that lists the satellites available with their corresponding signal strengths. The BLID Application Satellite Info API is available in S60 3rd Edition and onwards.

03-Nov-2006

MIDP: Location API Developer's Guide v2.0
This updated document describes the Location API for Java ME (JSR-179), which enables the development of location-based mobile applications. The three main features that the Location API brings to mobile programming are obtaining device location information, the possibility to create, edit, store, and retrieve landmarks, and the possibility to obtain device orientation information. This document also describes and illustrates the architecture of MIDP: Location API Example - Tourist Route.

29-Aug-2006

S60 Platform: Landmarks UI Add/Edit API Specification
This document specifies the Landmarks UI Add/Edit API, which is available from S60 3rd Edition onwards. The API provides UI components for creating and manipulating landmarks.

29-Aug-2006

S60 Platform: Landmarks UI Selector API Specification
This document specifies the Landmarks UI Selector API, which provides an interface to applications for listing and selecting one or more landmarks or categories, which exist in the landmark database. This interface allows displaying a dialog, listing all the landmarks or categories, where the user can select one or more landmarks or categories. The Landmarks UI Selector API is available from S60 3rd Edition onwards.

31-Mar-2006

JSR 179 Location API for J2ME™version 1.0.1 - HTML javadoc version
This is the Final Release version of the JSR-179 Location API for J2ME specification developed under the Java Community Process. This specification defines a J2ME Optional Package that enables mobile location-based applications for resource limited devices. The API is designed to be a compact and generic API that produces information about the present geographic location of the terminal to Java applications.This API covers obtaining information about the present geographic location and orientation of the terminal and accessing a database of known landmarks stored in the terminal.

11-Nov-2005

S60 Platform: Landmarks API Specification
This document specifies the Landmarks API, which is available from S60 3rd Edition onwards. The API allows terminal applications to manage landmarks in a consistent way. For instance, a landmark received in an e-mail may be stored so that it is available for a map application. Revision on August 29, 2006: minor editorial changes.

01-Sep-2005

S60 Platform: Landmarks Exchange Format Specification
This document specifies how mobile applications can exchange landmark information over cellular and local connectivity, supported from S60 3rd Edition onwards. The document also contains use cases and examples. Revision on August 29, 2006: minor editorial changes.

28-Apr-2005

Consumer Applications - Spring 2005 (7.8mb)
Low resolution (7.8mb) version of the Forum Nokia Spring 2005 Consumer catalog. Includes Addendum. Updated 4/27/05

14-Mar-2005

Capitalizing On The Location-Based Services Opportunity
This white paper presents an overview of how Nokia platforms and tools are opening the Location Based Services opportunity for developers.

11-Nov-2004

S60 Platform: Landmarks Search API Specification
This document specifies the Landmarks Search API, which is available from S60 3rd Edition onwards. The API extends the Landmarks API to enable searching for landmarks or landmark categories that match certain criteria. For instance, a client can search for all restaurants in a landmark database. Revision on August 29, 2006: minor editorial changes.

11-Nov-2004

S60 Platform: Landmarks Database Management API Specification
This document specifies the Landmarks Database Management API, which allows clients to perform database management tasks such as adding new databases or deleting existing databases. The API is available from S60 3rd Edition onwards.

11-Nov-2004

S60 Platform: Location Acquisition API Specification
This document specifies the Location Acquisition API, which is available from S60 2nd Edition, Feature Pack 2 onwards. The API allows terminal applications to retrieve information related to the current location of the mobile device.

Featured Items

Newsletter Sign Up

Privacy Policy Archives

Forum Nokia Blogs

Nokia Content Discoverer

Forum Nokia PRO

Forum Nokia Champion

Business Opportunities

Events

Press & Analysts

Application Catalogs

Forum Nokia e-store

Forum Nokia RSS feeds

  • Latest Devices
  • Latest Documents
  • Latest Tools
  • Latest Blog Entries

Send this page

Developer Feedback

No comments: