Symbian C++ programming is commonly done with an IDE. For previous versions of Symbian OS, the commercial IDE CodeWarrior for Symbian OS was favoured. The CodeWarrior tools were replaced during 2006 by Carbide.c++, an Eclipse-based IDE developed by Nokia. Carbide.c++ is offered in 4 different versions: Express, Developer, Professional, and OEM, with increasing levels of capability. Full featured software can be created and released with the Express edition, which is free. Features such as UI design, crash debugging etc. are available in the other charged for editions.
Once developed, Symbian OS applications need to find a route to customers' mobile phones. They are packaged in SIS files which may be installed over-the-air, via PC connect or in some cases via Bluetooth or memory cards. An alternative is to partner with a phone manufacturer to have the software included on the phone itself. The SIS file route is more difficult for Symbian OS 9.x, because any application wishing to have any capabilities beyond the bare minimum must be signed via the Symbian Signed program.
Carbide.c++ is a powerful family of mobile development tools built on the Eclipse framework. Family members include:
- Carbide.c++ OEM Edition for device creation users
- Carbide.c++ Professional Edition for developers working with pre-production devices
- Carbide.c++ Developer Edition for application development on production phones
- Carbide.c++ Express, available as a no-cost download to introduce developers to mobile experience
All four products are included in the installer. The user will select their specific Carbide product at installation.
This tutorial will demonstrate the basic programming concepts of the Series 60 SDK by showing step after step how to write a Tetris game for the Series 60.
The S60 software is a multivendor standard for smartphones that supports application development in Java MIDP, C++, and Python. An important feature of S60 phones is that they allow new applications to be installed after purchase. Unlike a standard desktop platform, however, the built-in apps are rarely upgraded by the vendor beyond bug fixes. New features are only added to phones while they are being developed rather than after public release.
These are a few common features in S60:
- Devices' display resolution is originally 176×208. Since 2nd Edition Feature Pack 3, S60 supports multiple resolutions, i.e. Basic (176×208), QVGA (240×320) and Double (352×416). Nokia N90 is the first S60 device that supports higher resolution (352×416). Some devices, however, have non-standard resolutions, like the Siemens SX1, with 176×220. Nokia 5500 has a 208×208 screen resolution.
- It supports Java (J2ME MIDP 2.0 commonly, but varies from phone to phone.) applications and Symbian C++ applications.
- Certain buttons are standardized, such as left and right select, Menu, Clear, and Input Settings.
There have been three releases of S60: “Series 60” (2001), “Series 60 Second Edition” (2004) and “Series 60 3rd Edition” (2005).
It is noteworthy that software written for S60 1st edition (S60v1) or 2nd edition (S60v2) is not binary compatible with S60 3rd edition (S60v3), because it uses a new, hardened version of the Symbian OS (v9.1).
Forum Nokia recently introduced eLearning services to the mobile application developer community. Nokia Developer eLearning courses — designed to provide maximum information in the least time — offers a visually engaging, guided-learning experience. The courses include hands-on practice labs, audio, and multimedia-based information. Nokia Developer eLearning courses provide developers with accurate, relevant, and engaging instruction about Nokia platforms — direct from the source.
Because eLearning eliminates the boundaries imposed by time and location, eLearning is an excellent educational vehicle for teaching developers how to deploy and use new technology. Programmers and architects can study whenever they prefer.
This page provides links to all the tools and SDKs available from Nokia and associated third-party tools vendors for creating mobile applications and content. A number of links are included to articles that provide overviews of the tools and SDKs for several of the supported technologies.
Open C helps optimize porting of open source and desktop applications to S60 on Symbian OS. With Open C, S60 is implementing five additional C libraries built on open source projects including OpenSSL, GNOME, and LIBZ.
Code examples, How to's, Discussion Boards, etc