Technology Roadmap
We've put this section together to try and map out the mobile technology landscape for you. It can be a bit daunting at first as there are many acronyms, codes, vendors and suppliers in this field, but as you'll see below, they tend to fall into a number of fairly broad categories. Please refer to our glossary for any terms that aren't explained here.
| Glossary | Links |
|
|
Mobile Phone Categories
Blackberries
Blackberries are produced by a Canadian company called Research In Motion (RIM). The Blackberry phones were a world first in that they were the first phones to be always connected and supporting push-technologies for email delivery. In addition, their seamless integration with back end mail servers such as Microsoft Exchange make them a "must-have" for managers world wide. Blackberry phones have a large market penetration particularly in the United States and their share of the business smartphone market is growing rapidly.
These phones come with a set of native applications pre-installed and generally support Java applications adhering to the MIDP 2.0 specification. They also allow custom development using their own development tools and the phones themselves run a RIM proprietary operating system.
Pocket PCs
Pocket PCs are Microsoft's answer to the smartphone market. The latest evolution of the platform has unified the previously diverse operating systems and now fully support the .Net Compact Framework using the C# programming language. What this means in real terms is that it's relatively easy to build and deploy advanced applications for these phones as there are a large number of .Net developers in the world at this time. And an immediate consequence of that is that there is a very large number of applications available for the Pocket PCs.
Palm OS
Palm PDAs such as the Palm Pilot run the Palm OS and have been around for years. There are probably more applications available for the Palm OS phones than any other operating system. They run their own proprietary operating system and allow third party development using C++. In addition, most support installation of Java applications for MIDP 1.0 or MIDP 2.0.
Apple's iPhone
The iPhone is a newcomer at this stage. While it promises to be as an excellent, stable and versatile phone, Apple has decided to prevent third party software developers from writing applications for it for the present. This means that while it will no doubt come with a wide variety of native applications, you would only be able to download and install new applications written by Apple engineers. That's not necessarily a bad thing as their reputation for quality software is well known. It is not clear at this stage whether these phones will support MIDP Java applications of any kind, but we certainly hope so.
Nokia Phones
The Nokia Series 40 phones (see below) hold an extremely large share of the mass market. They are fast, durable and run the Nokia proprietary operating system. The latest of these phones contain the most recent Java features allowing for excellent MIDP Java application development. In addition, they support FlashLite (see below) which means that we will shortly see a new market emerge for screensavers and flash-based gaming.
UIQ Phones
These are the phones that come with stylus and utilise a touch screen. These run the Symbian operating system and are amongst the best high-end smartphones currently on the market. The Sony Ericsson P900 is a popular example of a phone based on the UIQ platform.
Symbian OS-Based Phones
These run the Symbian operating system and with the release of V9.1, are probably the most secure phones available today. The Symbian operating system dominates the world market, with phones from manufacturers including Nokia, Motorola, Sony Ericsson, Samsung and Panasonic all using various versions of the OS. All Series 60 and Series 80 phones run this system and there are a large number of applications available for them. Symbian applications are written in C++ but these phones also all support Java application installation.
Miscelleaneous Phones
A large amount of phones don't fit into the above categories but are still great devices. Some examples are handsets from LG, Sharp and a number of Motorola models. These generally use a proprietary operating system and allow installation of Java MIDP applications.
Java Mobile Technology & Java Applications
Most phones allow downloading and installing of Java applications (called "Midlets"). These are delivered in the form of a Java Archive file (or "Jar" file). You can also download these files just like anything else, onto your PC and then transfer it onto your phone via a direct connection such as a serial cable, USB, Bluetooth or Infra-Red (IR).
Occasionally you will see or hear of the term CLDC. This stands for Connection Limited Device Configuration and is simply a standard that specifies a minimum sets of requirements a device must have. This means that people who build software can make certain assumptions about the characteristics of the hardware when they know the version the device supports. There are currently two versions of the CLDC, versions 1.0 and 1.1 which most newer phones support. As an end user you don't really need to worry about this though.
A phrase more frequently encountered is MIDP. This stands for Mobile Information Device Profile and it builds on the CLDC specification above by adding further hardware requirements (minimum memory, screen size etc). The current version is MIDP 2.0 and you will often see this listed on a mobile phones' feature set in the shops. MIDP 2.0 introduces some new things for mobile software development, so in general phones that only support MIDP 1.0 won't be able to run applications build for MIDP 2.0. Again, this is less of an issue these days as most phones support MIDP 2.0, especially the Nokia Series 40 mass-market phones.
When looking at what Java technologies a phone can support it's becoming common to see statements like "JSR 205 WMA" in the list of extras - which isn't particularly helpful for most people. These represent extra functionalities provided by the handset manufacturer that allow Java applications to do some more useful things - for example JSR 205 WMA is the Wireless MEssaging API and lets applications send and receive SMS and MMS messages. These are optional packages and not all phones have the same set of them (which makes building applications all that more interesting).
In mobile phone software development circles, the terms J2ME and Java are often used interchangeably. Collectively, the CLDC, MIDP specifications and the optional add-on packages together can be thought of as representing J2ME - the microedition of the Java programming language specifically designed for resource constrained devices such as pagers and mobile phones.
Over the last few years Java technology has allowed for a proliferation of applications - of which a vast majority are games. In fact, so popular is this that support for gaming has been specifically built into the MIDP 2.0 specification. While Java applications will not run as fast as native applications, they are excellent for a wide variety of tasks and will usually run across a large number of handsets without any problems. For simple applications, this is the technology of choice.
Symbian Applications
The Symbian Operating System (Symbian OS) is to smartphones what Microsoft Windows is to PCs. Over 100 million phones worldwide run the Symbian OS and it has the greatest market share at this time. Most of the major handset manufacturers have some stake in this system and as a result it is the leading smartphone technology. Applications written for Symbian OS are written in C++ and run natively which means that they are fast. They are delivered in the form of a Symbian Installation System (or "SIS") file either over-the-air (OTA) or from a PC. The latest version is 9.x and introduces an extremely secure environment.
With the rise of malware (viruses, trojans and worms), it is becoming increasingly important to unobtrusively protect the data on and integrity of people's phones. Symbian leads the world in this manner by requiring all software that uses certain features to be checked by a registered third party authority - allowing the application to be "signed" as being trustworthy. Handsets will not install let alone run unsigned applications that use protected functionality. In this manner, Symbian raises the bar for software quality while maintaining a high level of end user confidence.
Applications written for Symbian OS can access most features on a phone and for a number of tasks there is no other way to do this. For example, if you wanted to access the onboard camera from an application, you could not use Java technologies for this. Symbian applications operate at a low level and are consequently harder to build, but result in a better user experience. With each new evolution of the platform, we're seeing more opportunities for applications that push these devices to their limits.
Sitting over the top of the Symbian OS is a number of different user interface (UI) layers. The UIQ interface (from the company UIQ), the Series 60 and Series 80 interfaces from Nokia as well as MOAP which is used in the Japanese market. Series 80 phones tend to be wide PDA type phones with full QUERTY keyboards (for example the Nokia 9500 Communicator) while the Series 60 and UIQ interface (the Sony Ericsson P900 for example) phones dominate the high end of the device spectrum. Confusingly, there is no relationship between the model number of a phone and the UI platform - for example the Nokia 6600 is a Series 60 phone, while the Nokia 6233 is a Series 40 phone (which doesn't run Symbian OS at all).
For more information, please visit our links area where you can investigate device details and Symbian further.
Miscellaneous Technologies
Flashlite
Flashlite is currently in version 1.1 and is a cut-down version of the web technology Flash. Flash provides rich dynamic user interfaces for websites that are second to none. Now with Flashlite, the same can be said for mobile applications too. We expect to see a large surge in this market over the next two years especially as the demand for Flash games, user-interfaces and screen savers grows. Indeed, phones are already being deployed with in built Flashlite screen savers and with the plethora of Flash developers world wide there are exciting opportunities for users and developers alike.
OpenGL ES
OpenGL is a 3D graphics technology and has long been known in the gaming industry as the competitor of Microsoft's DirectX. Most of the classics of the last decade such as Doom, Quake and Descent were written using OpenGL libraries and consequently have a large following in the developer community (one which at times, verges on the religious). OpenGL ES (OpenGL for Embedded Systems) is a subset of the OpenGL standard specifically designed for constrained devices such as mobile phones.
To date, not many phones provide hardware support for 3D graphics, but there are a few, and there are more coming. There are however also software implementations that still provide acceptable performance. We expect a high demand for this technology over the coming months.
|