We encourage you to give us feedback about development topics and other matters related to this web site.
Submit feedbackCalling All Innovators - Nokia's annual app development contest
Nokia releases new Qt developer offerings
$1M Growth Economy Venture Challenge - deadline for submissions: April 18
How to use USB cable connection in Java ME
Jim Gilmour
Read more about Jim on the Champions website.
MobileMonday — Dallas
February 15, 2010
Dallas
Mobile World Congress
February 15, 2010
Barcelona, Spain
WIPJAM@MWC
February 18, 2010
Barcelona, Spain
Building Maemo and Symbian apps using Qt Creator (Session 1)
February 22, 2010
2 p.m. London, 4 p.m. Helsinki
Building Maemo and Symbian apps using Qt Creator (Session 2 - In Portuguese)
February 24, 2010
11 a.m. New York, 1 p.m. Sao Paolo, 3 p.m. Azores

What's new in Java Runtime 1.4 for S60
This presentation gives an overview of the new features introduced in Java Runtime 1.4 for S60 (JRT1.4). The main new features are Mobile Sensor API (JSR-256) support, touch screen usability improvements, and On-Screen Keypad on touch-screen devices with a hardware keyboard. JRT1.4 is used in all S60 5th Edition devices except the Nokia 5800 XpressMusic.

What's new in Java Runtime 1.3 for S60
This presentation gives an overview of the new features introduced in Java Runtime 1.3 for S60 (JRT1.3). The main new features include S60 policy as the default security policy, Pop-up TextBox, and freely resizable fonts. JRT1.3 is used only in the Nokia 5800 XpressMusic.

Qt for Symbian: QMemoryGame Example
This Qt C++ example application demonstrates how to implement the Qt UI with animation on top of an existing Open C++ engine.

WRT Widgets for the S60 on Symbian OS E-learning
This e-learning module introduces the Nokia web widgets, which are web applications that can be run outside the web browser in devices compatible with the Web Runtime environment. An example web widget is used to demonstrate how to develop and deploy the widgets. This module is also available in Chinese.

Web Runtime: FNReader Widget Example
The FNReader Widget Example is a simple WRT application for RSS feed reading. It demonstrates how to use the Online/Offline API, enable the home screen view, and use the Nokia Mobile Web Templates in a WRT widget.

Qt: QAnimatedGallery Example
This cross-platform Qt code example demonstrates the Qt Animation Framework which comes as a built-in with Qt 4.6. The application uses different transition effects to show images to the user.
Design and Paper Prototyping Templates
These Design and Paper Prototyping Templates are ideal for early brainstorming and conceptual design. The package includes printable device sketching templates, and a set of user interface components that you can print, cut out, and customise to create basic paper prototypes.

Web Developer's Library
The Web Developer's Library is an information package for developers wishing to create WRT widgets for S60 (Symbian) Devices and web pages for the Web Browser for S60. The library includes introductory, getting started, implementation, and API-level information about WRT widgets, as well as examples of creating WRT widgets. The library also includes introductory, getting started, design, and implementation information about creating web pages for the Web Browser. This library is available online and as a stand-alone version.

Preinstalled and Preloaded S60 Applications
Learn how to create, upgrade, and unistall preinstalled Symbian C++ applications in S60 3rd Edition and S60 5th Edition. MIDlet preinstallation is also briefly discussed. The document also includes information about preloaded Symbian applications and MIDlets in S60 3rd Edition and 5th Edition. An example launcher application is included in the package.

OMA Device Management DDF for Nokia Remote Customisation
This document describes the Nokia implementation of OMA Device Management DDF for Remote Customisation. The customisation management object is used for remote “look-and-feel” management of Nokia devices. The remote customisation features introduced in this document apply to S60 3rd Edition Nokia Eseries mobile devices and all Nokia S60 devices from S60 3rd Edition, Feature Pack 1 onwards.

Flash Lite: Transition Example
This example application demonstrates simple transition effects and their use cases. The transitions demonstrated in the example application are List flies in, Peek, Bounce to position, Slide entrance, Flick, and Flip. The application is compatible with all devices supporting Flash Lite 2.x and higher (S60 3rd Edition, FP1 and newer, Series 40 3rd Edition FP2 and higher) but is optimised for touch UI.

Flash Lite: Transitions
This document describes how to create certain transition effects in Flash Lite 3.x for applications compatible with the Nokia 5800 XpressMusic.

Qt for Symbian Developer's Library
The Qt for Symbian Developer's Library is an information package for developers writing Qt applications with Qt 4.6 for the Symbian Platform. The library includes introductory information about Qt for Symbian, how Qt works on the Symbian platform, porting from Symbian to Qt, and porting Desktop Qt applications to Qt for Symbian. The library is published in online, Eclipse plugin and standalone formats.

Web Runtime: BetaLabsWidget Example
This web widget application demonstrates a thin client that connects to Nokia Beta Labs using its HTTP API and Guarana UI library components.

S60 5th Edition: Mobile Paint Example
This C++ code example demonstrates drawing and other touch UI features of S60 5th Edition with direct manipulation using, for example, CCoeControl::EnableDragEvents(). The application provides a number of drawing options that can be selected from a toolbar. There are two toolbar options, CAknToolbar and a custom floating toolbar. All application graphics have been implemented as Scalable Vector Graphics Tiny (SVGT) icons. In the updated version, the drawing performance has been significantly improved. The example application has been developed for Symbian S60 5.0 and touch UI. Important classes: CCoeControl, MTouchFeedback, CFbsBitmap, CFbsBitGc, CFbsBitmapDevice, CAknToolbar, CAknToolbarExtension, MAknToolbarObserver.

Layout Samples for Mobile Web Templates for High-End Devices
These layout samples are created using components from the Nokia Mobile Web Templates for High-End Devices. The layouts illustrate common ways to combine components within the context of a corporate website, a news website, and an online store. Layout Samples for Mobile Web Templates for High-End Devices is part of the Mobile Web Templates and Layout Samples series. For an introduction and more information, see Mobile Web Templates - introduction to templates.

Layout Samples for Mobile Web Templates for Low-End Devices
These layout samples are created using components from the Nokia Mobile Web Templates for Low-End Devices. The layouts illustrate common ways to combine components within the context of a corporate website, a news website, and an online store. Layout Samples for Mobile Web Templates for Low-End Devices is part of the Mobile Web Templates and Layout Samples series. For an introduction and more information, see Mobile Web Templates - introduction to templates.

Nokia Mobile Web Templates for High-End Devices
The Nokia Mobile Web Templates provide a series of custom, styled, and tested mobile web components. You can either mix and match the components or use the full series to completely customise your mobile website or application. The components are suitable for most S60 3rd Edition and S60 5th Edition devices from Nokia and also are compatible with newer Series 40 WebKit and Maemo devices.
Mobile Web Templates for High-End Devices is part of the Mobile Web Templates and Layout Samples series. For an introduction and more information, see Mobile Web Templates - introduction to templates.

Nokia Mobile Web Templates for Low-End Devices
The Nokia Mobile Web Templates are a series of custom, tested mobile web styles and components. Creative developers can mix and match components as needed or use the full series to completely customise their website or application. This series of templates is primarily intended for low-end devices.
Mobile Web Templates for Low-End Devices is part of the Mobile Web Templates and Layout Samples series. For an introduction and more information, see Mobile Web Templates - introduction to templates.

User Experience Evaluation Model
The Forum Nokia User Experience programme provides an evaluation service that evaluates a developer’s application from the user's point of view. The evaluation comprises multiple evaluation items described in this document. More information about the User Experience Programme can be found from the Forum Nokia website.

S60 3rd Edition C++ Developer's Library
The S60 3rd Edition C++ Developer's Library is an integrated package of information for developers wishing to use the S60 platform to develop mobile C++ applications and services. The library includes a C++ API Reference Guide and the Symbian Developer's Library v9.3. It also provides links to documentation and example applications available on Forum Nokia.

Qt: QSimpleImageViewer Example
This Qt C++ application demonstrates how to scale, load, and convert images and show them on the screen.

Qt: QPlugin Example
This Qt C++ example application demonstrates how to extend an application with Qt plug-ins.

WRTKit Developer’s Guide
This is the developer’s guide for WRTKit, an unsupported set of utility components and code that provide a UI library designed to help widget developers create functionally rich and visually appealing WRT widgets. The guide describes the use of the WRTKit components, offers several tutorials on using WRTKit, and provides a detailed API reference.

Qt: QSharedMemory Example
This Qt C++ client/server application demonstrates how to share memory between processes.

Qt: QSolitaire Game Example
This Qt example application is a cross-platform application based on the Qt Graphics View Framework and SVG graphics that runs in different Qt environments. Besides the S60 platform and Windows Vista, the updated example has been modified to support Qt for Maemo on the Nokia N900.

Flash Lite Components
This resource file includes ten Flash Lite components; Button component, Calendar component, Checkbox component, Contacts component, List component, Media data component, Messaging component, Pop-up component, Radiobutton component, and Scrollbar component. The components can be used to develop applications to devices supporting Flash Lite 2.0 (and above). The developing environment requirements are Adobe Flash CS3 or CS4. The resource is closely related to Guide to Flash Lite Components. Please give feedback on the components through the Flash Lite Discussion Board.

OMA Device Management DDF for Nokia Mail for Exchange
This document defines the Nokia Mail for Exchange (MfE) client settings format for Open Mobile Alliance (OMA) Device Management (DM) usage. The MfE client can be used on Nokia S60 devices to perform the synchronisation of email and PIM data with a Microsoft Exchange Server, and it supports the remote configuration of MfE settings such as server address, user credentials, and synchronisation schedule by OMA DM solutions. The document is a Nokia interpretation of the OMA Device Management specification and is valid from S60 3rd Edition onwards.

Qt: Noughts and Crosses Game Example
This Qt example application is a Noughts and Crosses game that demonstrates a
cross-platform application with a custom layout using QLayoutManager and style
sheets for buttons. The application supports touch UI and keyboard. It has
been designed to work on the S60 platform, Maemo, and Windows XP. The application has been tested to work on the latest Qt for S60 4.5.2 Tower release and Qt for Maemo on the Nokia N900. Important classes: QPushButton, QLayout.

S60 5th Edition C++ Developer's Library
This version of the library introduces new features included in the Nokia N97 SDK. The S60 5th Edition C++ Developer's Library, incorporating the Symbian Developer's Library v9.4, is an integrated package of information for developers wishing to use the S60 platform to develop mobile C++ applications and services. The library includes a C++ API reference guide, porting information, and information on new features available in S60 5th Edition. It also includes information on S60 UI components and using them in C++ applications, for both touch and non-touch UIs, along with links to example applications available on Forum Nokia.

Java™ ME Developer's Library
Java™ ME 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.
This library is available in HTML format online, as a stand-alone version, and as an Eclipse plug-in.

Flash Lite Developer's Library
The Flash Lite Developer's Library is an information package for desktop Flash developers and mobile software developers looking to branch out to Flash Lite development. The library offers introductory and getting started information as well as several use cases describing Flash Lite features in more detail. This library is available online and as a standalone version.

Qt for S60: QFriendFeed Example
This Qt C++ example application is a social networking application that integrates to a
FriendFeed microblogging engine (http://friendfeed.com/). QNetworkAccessManager is used to access the FriendFeed RESTful API to retrieve and post XML data which is parsed using the SAX parser. Though optimised for various S60 screen
layouts and input mechanisms, the UI relies on Qt cross-platform UI components. Their appearance is modified using CSS style sheets. The application has been tested to work on S60 3rd Edition and S60 5th Edition devices, with touch UI and keypad, and with Qt for S60 version Tower 4.5.2. Cross-platform support has
been verified on Windows XP.

Qt for S60: QTabs Example
This Qt C++ application demonstrates how to implement a Qt for S60 application with tabs. Every tab has its own Options menu. Views (QWidgets) are stored in different tabs (QTabWidget). The application has a S60-style status and control pane and it supports screen orientation changes. The example has been tested to work on S60 3rd Edition and 5th Edition devices with Qt for S60 4.5.2 Tower release. Important classes: QTabWidget, QWidget, QMainWindow.

Qt for S60: QStackedWidget Example
This Qt C++ application provides a method to implement multiple views in Qt for S60 applications (an alternative to using tabs). Views (QWidgets) are stored in a stack (QStackedWidget). On application startup, only the default view is created in the stack. To optimise memory consumption, the other views are not created until they are needed. Every view has its own Options menu and CBA buttons with view-specific commands. The example has been tested to work on S60 3rd Edition and 5th Edition devices with Qt for S60 4.5.2 Tower release. Important classes: QWidget, QStackedWidget, QMainWindow.

Client Provisioning Registration Forms
Client provisioning registration forms provide the information needed when creating XML-based client provisioning documents for various applications. These documents contain application IDs, parameter lists, and values that are used for different applications.

Widgets for the S60 Platform Training Course
This training course describes how to develop Nokia Web Runtime (WRT) widgets for the S60 platform devices. Widgets are web applications that can be run outside the web browser in devices compatible with the Web Runtime environment. This package includes training documentation and lab exercises with example code.

Guide to Flash Lite Components
The purpose of this document is to describe a generic process for creating, using, and customising Flash Lite User Interface and Data components (that is, S60 Platform Services). This guide focuses on the methodology and processes as a whole, rather than the implementation details and practices of individual components. The document is targeted at intermediate users of Flash and ActionScript from Adobe. This document is closely related to Flash Lite Components.

OMA DM: Management Object for Nokia VCC
This document defines the Nokia settings format for Voice Call Continuity (VCC) for use with Open Mobile Alliance (OMA) Device Management (DM). The document provides a description of the management object layout, specification of each node, and useful references.

Web Runtime: Hue Widget Example
This Web Runtime (WRT) widget allows users to explore and search for colours, patterns, and palettes from the popular colourLOVERS.com website API. The widget is related to the Widget design tutorial in the Design and User Experience Library.

OMA DM: Management Object for Connectivity Settings
This document defines the Connectivity Settings management object v1.1 settings format for OMA Device Management (DM) usage. The document is a Nokia interpretation of the OMA Device Management specification. The document is valid from S60 3rd Edition onwards.

OMA Device Management: Management Object for SNAP
This document defines the Service Network Access Point (SNAP) Management Object v1.0 settings format for OMA Device Management (DM) usage. SNAP is a concept introduced in S60 3rd Edition, FP2 that groups together a set of Internet Access Points (IAPs) that can be used to reach hosts and services such as internet, corporate intranet, or operator service.

Optimizing Mobile Software with Built-in Power Profiling
This document describes S60 software profiling tools that allow every developer to measure power consumption without any external equipment. Measurement analysis is carried out either on the mobile device or a PC. In addition, the document present a set of guidelines and good practices that energy-conscious developers should follow to maximise application use time. This document was originally published as a chapter in the book Mobile Phone Programming and its Application to Wireless Networking in 2007.

Web Runtime: AccuWidget Example
This S60 Web Runtime widget allows the user to check the current weather conditions and the forecast for the current and following day. The updated version supports adding the widget on the home screen (first introduced in the Nokia N97). The example application is designed to support all S60 devices with Web Runtime, both with keypad and touch UI.

Web Runtime: RouteWidget Example
This S60 Web Runtime widget demonstrates how to retrieve the current location (latitude and
longitude), travelled distance, current speed (horizontal), and number of GPS satellites. The updated example supports adding the widget on the homescreen, first introduced in the Nokia N97 device. The application can be installed on S60 devices that support Platform Services for Web Runtime (from S60 5th Edition onwards), and it is optimised for touch UI.

OMA DM: Management Object for Generic VoIP Settings
This document defines the GenVoIP (Generic VoIP) settings format for use with Open Mobile Alliance (OMA) Device Management (DM).

OMA DM: Management Object for Nokia VoIP Implementation
This document defines the Nokia VoIP implementation settings format for use with OMA DM and provides a basic example of how the objects can be managed.

New Java Runtime Features in S60 3rd Edition, Feature Pack 2 Devices
This document presents the new Java ME features of S60 3rd Edition, Feature Pack 2 in a nutshell. It provides a brief introduction to the features and links to selected Java™ ME Developer's Library topics or other relevant resources."

Home Screen for C++ Developers
With the Nokia N97 SDK Home Screen Publishing API, you can publish data from your C++ application live to the device home screen. The Home screen section of the S60 5th Edition Developer's Library describes the home screen and provides implementation information on getting your application to the home screen.

New APIs in the Nokia N97 SDK
The Nokia N97 SDK introduces new APIs enabling applications to publish data to the device homescreen, handle out of memory situations more effectively, and compensate sensor data for device or display orientation. The Nokia N97 SDK APIs section of the S60 5th Edition Developer's Library describes how to use the new APIs in your application.
You can provide feedback about content on this page here