You Are Here:

Device Optimization

Register Today

Register with Forum Nokia now and you'll enjoy the full benefits of the Forum Nokia membership.

Register Login
Community Highlights

Innovation Series Videos highlighting Forum Nokia developers

Wiki article of the week

Java Porting

Champion of the month

Felipe Andrade
Read more about Felipe on the Champions website.


Forum Nokia Events

Ovi Store Publisher Reporting
July 08, 2009
9 a.m. New York, 2 p.m. London, 4 p.m. Helsinki

Ovi Store Publisher Reporting
July 08, 2009
11 a.m. San Francisco, 2 p.m. New York

Nokia World 09
September 02, 2009
Stuttgart, Germany

Adobe MAX 2009
October 04, 2009
Los Angeles

International CTIA WIRELESS I.T. & Entertainment 2009
October 06, 2009
San Diego, California


View all

Contents

Optimize Overview

For as long as developers have been building applications for mobile devices, they have been contending with the challenges of device differentiation. This issue has become even more important as the number of devices has grown and the promise of "write once, run anywhere" has become harder to realize.

However, device manufacturers are not creating different devices just to make developers' lives more difficult. Each unique device targets a different market niche - a combination of form, functionality, and price - which expands the total addressable market for mobile applications. And within the Nokia portfolio, device differentiation does not mean market fragmentation, but instead the expansion of the Platforms.

Leveraging Commonalities

The Develop/Optimize Process

Nokia recommends building applications starting with the key technology enabler (such as Symbian C++or Java MIDP), which you will have selected based on the application's requirements, your expertise, preferences, and the desired market.

Next, you can target specific Platforms and develop your applications against the Platform specifications

The next step is to optimize the applications for the different UIs on a given Platform (such as screen size and keymapping) and then accommodate any device-specific hardware limitations or issues, such as file size limitations or processor speeds.

You can also add functionality for specific devices that have lead software that adds capabilities to the base software of the Platform.

Here are some of Nokia's resources to help progammers understand the Platforms:

The Platform Advantage

Nokia currently offers three Platforms:

Nokia's platform approach provides a common software implementation across a range of Nokia devices. This consistency minimizes the differences between devices at a functional level, although there are some differences based on hardware and UI implementations that developers must address.

The key to leveraging the Platforms and minimizing device-specific development when building mobile applications is to stay as abstract as possible for as long as possible. By separating the business and application logic from the UI and taking device-agnostic programming into account from the outset, support of multiple devices - and even multiple Platforms - becomes significantly easier.

By starting in the abstract and gradually narrowing your focus, your application will be much more portable and device variation will have minimal impact. This is in stark contrast to developing your application for a specific device and then later trying to retrofit it to other devices, which often requires rewriting significant portions of code that may be tied to a particular device implementation.

Documents

Series 60 Platform: Dealing With Lead And Device-Specific Features In C++
This document presents methods to tackle the issues caused by the variance of devices, Symbian OS, and Series 60 Platform versions. Discussed issues are closely related to multiplatform application development, because the supported features and differences in APIs are especially important with cross-platform applications.

Designing MIDP Applications For Optimization
This document provides information on how to design and implement MIDlets that are easy to optimize for different devices having different features. Besides the code and device optimization instructions, this document also provides a thorough introduction for good and effective application design.

Understanding Nokia Develop/Optimize
Find out how to take advantage of the Nokia Develop/Optimize approach to create winning volume applications.

Forum Nokia Technical Library v1.33
Forum Nokia Technical Library is a documentation package compiled by Forum Nokia. 5 Java™ known issues, 7 Symbian C++ known issues, 14 Symbian C++ technical solutions, and 2 Content known issues have been added. The technical library is published in three different formats. This version is in WebHelp format.

Technical Note: Using the Nokia UI API Extension for Gaming Cover in the Nokia 3100 v1.0
This technical note describes how to use the Nokia UI API extension for Gaming Cover in the Nokia 3100.

MIDI and True Tones in Nokia Phones v2.4
This updated document is an introduction to MIDI in Nokia devices. The document includes MIDI format, Mobile XMF and Mobile DLS, download methods, and the supported instruments in Nokia GSM/CDMA/TDMA devices. The document also includes an introduction to True Tones in Nokia devices.

Developing Java Games for Platform Portability: Case Study: Miki's World
Using the development of Sumea's game Miki's World as an example, this document discusses the challenges of developing MIDP Java games for Platform for Series 40, and then porting them to devices with different screen sizes and to Platform for Series 60.

Rate This

Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditFurlTechnocratiMagnoliaTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
RDF Facets: qdcZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ qdcZtypeQUqfnTypeZE52esourceQ qdcZtypeQUqfnTypeZWebpageQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqrdfsZE52esourceQ qfnZdistributionQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX qfnZtypeQUqfnTypeZE52esourceQ qfnZtypeQUqfnTypeZWebpageQ qmarsZlanguageQUxhttpE3AE2FE2FswE2EnokiaE2EcomE2FlanguageE2D1E2FenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ qrdfZtypeQUqfnTypeZE52esourceQ qrdfZtypeQUqfnTypeZWebpageQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ