Register with Forum Nokia now and you'll enjoy the full benefits of the Forum Nokia membership.
Register LoginInnovation Series Videos highlighting Forum Nokia developers
Nokia releases new Qt developer offerings
Forum Nokia Developer Conference, India
Optimise your website for mobile devices with mobile web templates and layouts
Zoom and Rotate Gestures in FlashLite for touch-enabled devices
Jackson Feijó
Read more about Jackson on the Champions website.
MobileMonday Italy: The User Applications
November 23, 2009
Rome
Nokia Developer Days in South Africa
December 01, 2009
Johannesburg, South Africa
Forum Nokia Developer Conference ’09, India
December 07, 2009
Bangalore, India
LeWeb
December 09, 2009
Paris
Web Runtime Coding With Aptana WRT Plug-in
December 09, 2009
9am New York | 2pm London | 4pm Helsinki
Want to get started with mobile Java™ applications development?
Java™ ME for Nokia Platforms E-learning
This e-learning module provides a brief tutorial on how to start developing Java™ ME applications for Nokia platforms. It
covers the development process, the use of standard Java ME features, and the use of additional MIDP APIs.
Java™ ME Developer’s Library
Java™ ME Developer’s Library is a complete resource for Java developers wishing to use the S60 platform or the Series 40 platform
for developing mobile Java applications or services. The library contains introductory, getting-started, tutorial, and API
level information. This library is available online in HTML format, as a stand-alone version, and as an Eclipse plug-in.
Java™ Platform, Micro Edition (Java™ ME), the version of the Java language that’s optimised for mobile applications, is the most widely available runtime environment for mobile devices. It offers an unprecedented opportunity to take application ideas to the mass market.
Nokia platforms provide the industry’s most comprehensive support for Java ME APIs. In addition, to help maximise your application’s market reach, Nokia is committed to reducing fragmentation in Java APIs by supporting the Mobile Service Architecture (JSR-248).
So whether you want to take advantage of Nokia’s advanced Java APIs or build applications for the widest range of Java devices, Nokia’s support for Java technology is ready to work for you.
Learn more about Java development from these key Forum Nokia resources:
Tools and SDKs
Documentation
Wiki
Discussion Boards
Blogs
Mobile Java™ applications offer you the opportunity to create rich, sought-after applications for mobile phones. Nokia offers the most comprehensive support for Java technology in the world’s most-popular mobile phones. With its extensive technical resources, Forum Nokia can help you every step of the way — from writing your first line of code through building a profitable business creating Java applications. This page explains how.
The latest Nokia platforms are based on four key enabling technologies:
In addition to, or included in, these enabling technologies, the latest Nokia platforms and devices offer implementations of the JSRs listed in Table 1.
| Java™ technology | Series 40 platform | S60 platform |
| PDA Optional Packages for the J2ME™ Platform (JSR-75) Access a device’s contact, personal, and calendar information; read from and write to files on the device. |
Yes | Yes |
| Java™ APIs for Bluetooth v1.1 (JSR-82) Take advantage of Bluetooth connectivity to send and receive data and information. |
Yes | Yes |
| Wireless Messaging API (JSR-120) Send and receive SMS messages. |
Yes | Yes |
| Mobile Media API (JSR-135) Record and play or render various types of audio, still-image, and video content. |
Yes | Yes |
| J2ME™ Web Services Specification (JSR-172) Access RPC web services, as well as parse XML files, to extend web services from the desktop to mobile devices. |
Yes | Yes |
| Security and Trust Services API for J2ME™ (JSR-177) Use cryptographic APIs, a digital-signature service, and user-credential management to offer secure data access. |
Yes | Yes |
| Location API for J2ME™ (JSR-179) Determine a device’s location and access landmark information for mapping and location-based applications. |
Yes | Yes |
| SIP API for J2ME™ (JSR-180) Send and receive SIP messages to create IP-based device-to-device communication applications. |
Yes | |
| Mobile 3D Graphics API for J2ME™ (JSR-184) Render 3D graphics and utilise efficient OTA deployment of 3D content for games and other graphics-oriented applications. |
Yes | Yes |
| Wireless Messaging API 2.0 (JSR-205) Create, send, and receive SMS and MMS messages. |
Yes | Yes |
| Content Handler API (JSR-211) Define content handlers for specific file types, thereby enabling your application to handle multimedia and web content seamlessly. |
Yes | |
| Scalable 2D Vector Graphics API for J2ME™ (JSR-226) Use SVGT to enhance your application’s appearance and simplify the development of visually rich interfaces. |
Yes | Yes |
| Advanced Multimedia Supplements (JSR-234) Use enhanced music and 3D audio processing to offer a rich and expansive audio experience. |
Yes | Yes |
| Mobile Sensor API (JSR-256) Get support for gathering information from the accelerometer, battery charge sensor, charger state sensor, and network field intensity sensor on the Nokia N97 mobile computer. |
Nokia N97 | |
| eSWT API Build Java applications that use the platform’s native UI to offer users a familiar and intuitive application interface. |
Yes | |
| MobInfo API Access a comprehensive set of device information, such as the device's IMEI, network availability, and battery strength. |
Yes | |
| IAPInfo API Explicitly define the internet APIs used by your application. |
Yes | |
| Nokia UI API Extend the life of your MIDP 1.1 applications written for Nokia devices. |
Yes | Yes |
Table 1: Java technologies supported by the Series 40 platform and the S60 platform.
In addition, the Contactless Communication API (JSR-257) is provided in the Nokia 6131 NFC phone and Nokia 6212 classic phone, devices based on the Series 40 platform.
Using Java™ ME to implement your application ideas opens up a huge market worldwide.
Java ME is an industrywide technology, with most major manufacturers offering a range of devices with Java ME support. This means that, in addition to approaching the huge market offered by the 1 billion Nokia devices in use today, your application has the opportunity to reach almost all of the nearly 3 billion mobile devices in use around the world.
Java applications offer the potential to reach this market because of high levels of consumer acceptance. Consumer acceptance has been driven by the availability of a robust download-and-installation mechanism that is included with Java ME, which in turn has prompted operator support for Java application downloads. These built-in mechanisms also mean that your intellectual property is protected.
In terms of development, you can easily adapt your Java language skills to creating mobile applications. Java ME is based on the familiar Java™ Platform, Standard Edition (Java™ SE) that you already use to develop PC applications. Even if you’re not already using the Java language, you’ll find that it’s easy to learn using the many resources, including training and documentation for Java ME, that are available from Forum Nokia.
You may have heard that in using Java technology for mobile devices you might encounter API fragmentation — slight differences in the implementations of APIs from device to device. Because Nokia has taken a platform approach to implementing Java technology in the Series 40 platform and the S60 platform, you’ll encounter little or no fragmentation in developing for devices based on these platforms. In addition, Nokia has implemented the Mobile Service Architecture (JSR‑248) in the latest versions of the Series 40 platform and the S60 platform; this means that, as other manufacturers implement this JSR, fragmentation in the key Java APIs will be eliminated.
Whether you’re developing games, personal-productivity, news and information, enterprise, or entertainment applications, Java technology and Nokia’s platforms offer the APIs you need to take full advantage of mobility.
Nokia provides support for the industry’s leading Java™ IDEs: NetBeans and Eclipse. Both IDEs offer robust tools that make it easy to create high-quality Java applications efficiently.
Whether you’re new to Java™ development or new only to mobile Java development, NetBeans is a superb tool for developing Java
applications. NetBeans provides a rich set of tools that can help you become a seasoned mobile Java developer, offering, for
example, visual application-flow specification and drag-and-drop creation of an application UI. In addition, NetBeans offers
tools to support the use of SVGT, enabling you to create graphically rich UIs without the overhead of low-level graphics coding.
To get started, choose NetBeans Mobility for comprehensive mobile Java development support.
Read more about NetBeans Mobility »
Perhaps you’re already familiar with the Eclipse IDE from your development of PC Java™ applications. With the installation
of EclipseME, you’ll have the tools you need for creating, testing, and packaging MIDlets for mobile devices from Nokia.
Download Eclipse »
Download EclipseME »
Most current Nokia devices are based on either the Series 40 platform or the S60 platform. Within each platform, there are various editions and feature packs. Editions represent significant updates in functionality, such as moving from MIDP 1.x to MIDP 2.x. Feature packs are incremental improvements within an edition, adding, for example, new JSRs or improving the supported features within an existing JSR. Each combination of platform, edition, and feature pack has its own SDK.
To find out which platform, edition, and feature pack your device uses, consult the Forum Nokia Device Specifications pages and check the ‘Developer Platform’ section of the technical specifications.
Once you’ve determined which platform your device uses, you can download the SDK for the relevant feature pack and SDK.
Download the latest S60 platform SDKs that support Java™ development »
Download the Series 40 platform Java SDKs »
If you’re new to Java development, you’ll also need a Java™ Development Kit (JDK) — either JDK 6 or JDK 5.0.
Although you develop Java™ applications on a PC, the goal is to run them on a Nokia device. Two simple steps will help you do this.
First, download Nokia PC Suite, which provides a wealth of connectivity and synchronisation options.
If you’ve chosen to develop with NetBeans Mobility, you now have the option to use the NetBeans deployment module to transfer your application to a device connected to your PC directly from NetBeans. (Open your project’s properties and look for the Deploying option.) If you’re using another IDE, you can deploy your applications using the Install Applications option in PC Suite.
You now have all the tools you need — an IDE, Nokia PC Suite for connectivity, and the correct SDK for your device. If you need guidance on getting started, Forum Nokia can help.
First, visit the Java™ ME Developer’s Library. Whether you’re just embarking on mobile Java development or are a seasoned
mobile Java developer, the Java™ ME Developer’s Library is your indispensable reference to building Java applications for
Nokia devices. The resource package includes an introduction, a getting-started guide, tutorials, and API information for
the Java technology implemented in the S60 platform or the Series 40 platform.
Access the Java™ ME Developer's Library »
Alternatively, the Getting Started with NetBeans screencast provides an introduction to finding and installing the tools you need to get started with NetBeans, and it guides you through the steps to create, build, test, package, and deploy your first mobile Java application.
Download the Getting Started with NetBeans screencast »
You can further jump-start application development by leveraging one of the broad range of source-code examples available from Forum Nokia.
Now you can build your first mobile Java application and be well on the way to carving out your place in the fast-growing mobile Java applications market.
During the development process, everything may not work the first time. You may find an API you don’t fully understand or discover that your application doesn’t behave in exactly the way you’d expected. Don’t worry. Forum Nokia has resources to help you find answers.
First, try the Forum Nokia Wiki. This is a vast repository of information on all the technologies Nokia supports. The comprehensive
Java™ technology section provides background information on Java technology, how-to guides, source-code examples, and documentation
on known issues.
Access the Java™ category of the Forum Nokia Wiki »
If your application isn’t behaving as you’d expected, the Forum Nokia Knowledge Base, hosted within the Forum Nokia Wiki,
might be your best bet. The Knowledge Base provides details of known issues and technical solutions identified by the Forum
Nokia Technical Consultancy. Updated regularly, the Knowledge Base should be your first port of call whenever you encounter
unexpected behaviour in a Java application.
Access the Forum Nokia Knowledge Base »
If the answer to your question still eludes you, tap into the knowledge and expertise of the 2 million Forum Nokia member
developers in the Forum Nokia Developer Discussion Boards. First, search the forums to see whether your issue has already
been discussed. If it hasn’t been addressed, post your question to find out whether someone has a solution.
Access the Forum Nokia Developer Discussion Boards »
The Wiki, Knowledge Base, and Developer Discussion Boards often help developers find solutions, but if you’re working at the leading edge of mobile Java development, you may need to take advantage of Forum Nokia’s pay-per-incident technical-support services.
Find out more about Technical Support »
With the Series 40 platform and the S60 platform, testing your Java™ application is easy. Each platform SDK includes a device emulator that enables you to test your application on a PC and see it run as it would on a device. In addition, because Nokia devices are based on these platforms, you can be assured that your application will behave the same on all devices based on the same platform edition and feature pack.
To confirm that your application works properly, you should test it on the targeted devices. Understanding that it can be expensive to maintain a portfolio of suitable devices, Forum Nokia provides two remote-device-access services that you can use for testing and demonstrating content and applications. These services are:
To learn more about RDA and Forum Nokia VDL »
Once you’ve created your mobile Java™ application, you won’t want to keep it to yourself. You can market your application through many channels to the nearly 1 billion consumers who own Nokia phones.
Many sales channels require that your application be tested and certified via the Java Verified™ Program. Certification from
this industry-recognised program assures you and your customers that your application meets industry-standard test criteria
created by mobile Java experts.
Read more about the Java Verified™ Program »
Forum Nokia provides plenty of advice about promoting your applications. Whether your application has global, regional, or local appeal, Forum Nokia can help you find the right channels.
Read more about going to market »
Forum Nokia provides many additional resources to help with the development of Java™ applications.
Forum Nokia regularly publishes white papers, tutorials, screencasts, and other resources, providing in-depth and valuable information on creating mobile Java applications.
See a complete list of available Java documentation »
Once you’ve developed a great Java application, you’ll want to get it running on as many devices as possible. Browse Forum Nokia’s sections on the Series 40 platform and the S60 platform for information on how to get your application to the broadest market.
Read more about the S60 platform »
Read more about the Series 40 platform »
Two other exciting Java technologies are supported by Nokia devices: NFC and Nokia’s SNAP Mobile.
The Series 40 Nokia 6212 NFC SDK allows you to create applications that behave like smart cards using NFC technology.
Read more about the Series 40 Nokia 6212 NFC SDK »
If you’re creating games, you might want to take advantage of the SNAP Mobile SDK. Nokia’s SNAP Mobile, an end-to-end turnkey
solution based on the Java™ language, enables you to create connected mobile games that are played through a community-services
infrastructure.
Read more about the SNAP Mobile SDK »
See a complete list of Nokia tools and SDKs supporting Java technology »