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 |
Support for MT-LR Privacy | ||
Support for MT-LR Privacy, | ||
Same as in FP2 | ||
Same as in S60 2nd Edition, FP2 and FP3 Location Acquisition API (updated), | ||
Same as in S60 2nd Edition, FP2 and FP3 Location Acquisition API (updated), | ||
Java™ 2 Platform, Micro Edition (J2ME™).
| ||
Series 80 | ||
Other | Support for MT-LR Privacy Location Acquisition API, |
Supported location technologies
Technology | Devices | |||||
Integrated GPS | Nokia N95, Nokia E90 Communicator | |||||
| ||||||
Network-based positioning |
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
Forum Nokia PRO | Resources | Technical Services | Platforms | Go To Market | Market Segments
Legal Notice | Privacy Policy | Site map | Developer Feedback
© Nokia 2007.
No comments:
Post a Comment