Porting from Cross Platform
The key to targeting multiple Symbian OS-based platforms is to design the applications portability and multiple UIs in mind from the very beginning. On average 80% of the Symbian C++ application code is common to Symbian OS, which should be utilized. On top of that, additional commonalities can be found by utilizing the commonalities provided by the Nokia Platforms. So when designed cleverly, much of the code can be reused when porting between Symbian OS–based platforms, and also the effort required to optimize to a certain platform or devices can be limited to the minimum. Typically UI is the area where most of the porting effort is required in order to reach the optimal user experience, where separation of the application logic/engine and UI is one of the key principals when designing portable applications
Some documentation to help when targeting multiple Symbian OS-based platforms:
- Symbian OS: Platform-Independent Engine Development
- Symbian OS: Building Portable And Scalable UI
- Symbian OS: 3-D Game Engine Example, which works on all Nokia devices based on Symbian OS v6.1 and onwards; for example, in all Series 60 devices. The example does not only illustrate how to effectively separate the engine and UI, but also how to use single source code to serve multiple UIs and how to utilize additional lead features that are available in the never devices.
- More documentation is available in the Symbian Developer Network under the topic Targeting multiple Symbian OS platforms.
However, even if it is wise to design the application cleverly to avoid any unnecessary porting or maintenance work in the future, typically an application is still initially targeted for and developed a selected platform in mind. With Nokia Platforms, and especially the Series 60 Platform, it is possible to target a wide range of devices from multiple vendors providing the highest volumes and market potential to begin with. In addition to the highest volumes and wide industry adoption, there are a number of other benefits available with Series 60, some of which include the following:
- Due to the fast development and constant new product delivery cycle, Series 60 is typically the first Symbian-based platform to introduce the latest and newest features, which are only later available in the other platforms.
- Widest and best selection of development tools and documentation for the developers.
Therefore, developers should start by initially targeting Nokia Platforms, and especially the Series 60 Platform, and later once the basic maturity and proof of concept has been reached expand into UIQ and other Symbian-based platforms. Series 60 does not only provide a straightforward and easy path into other Symbian-based Nokia Platforms, such as the Series 80 Platform, but also to other Symbian-based platforms such as UIQ and FOMA. The same reasoning applies when migrating from non-Symbian platforms into Symbian; it makes the most sense to start with Series 60. There are several documents available to ease migrating to Series 60, for example, from Palm and Pocket PC.
Some documentation and tools to help porting further from Series 60 to other Symbian-based platforms:
- Series 80 Platform: Porting From Series 60 (With Example)
- Series 60 to UIQ porting tool - Peroon
- Porting applications from the Nokia Series 60 to the UIQ: document and source code.
- Porting Bemused from Series 60 to UIQ
Cross-Platform Development
Have you developed your mobile application in Visual Basic? Do you need Microsoft .NET connectivity? Several companies offer cross-platform development tools for porting and deployment of applications to different devices.
Tira Wireless offers its Tira Jump software platform, which automatically generates multiple versions of J2ME™ applications for different target platforms.



