Wiley.Developing.Software.for.Symbian.OS.2nd.Edition.Dec.2007 (779887), страница 7
Текст из файла (страница 7)
The first communicator device touse S60 is the Nokia E90, which is shown in Figure 1.4.Figure 1.4 Nokia E9020SMARTPHONES AND SYMBIAN OS1.7 Other Smartphone Operating SystemsThe smartphone market is competitive and so, not surprisingly, thereare other choices of smartphone operating systems besides Symbian OS.At the time of writing, Symbian OS enjoys a wide lead in this market,but competition is expected to become fierce as smartphones becomemore popular and phone manufacturers release more phones not basedon Symbian OS. There are many factors that will determine who willultimately win this market (and sadly not all based on which make thebest smartphones), but that’s not the subject of this book.This section gives a brief overview of four operating systems thatcompete with Symbian OS for the smartphone market: Windows Mobilefor Smartphones, BlackBerry, Palm OS, and Linux.1.7.1 Windows MobileThere is little doubt that Microsoft is the dominant operating systemfor the PC, but Microsoft is also gaining a presence in mobile computing devices – including smartphones.
This started with the creationof Windows CE for low-resource handheld devices (or other ‘embedded’ devices).Windows CE uses many of the same APIs and architecture as thedesktop-based Windows operating system, and includes a subset of thewindows user interface suitable for handheld devices. Microsoft releasedthe Pocket PC as a PDA that ran the Windows CE-based OS called PocketPC OS. As of 2003, the Windows CE and Pocket PC operating systemsare merged into the Windows Mobile family.Microsoft also aims to be a dominant player in the smartphonemarket, and has released another variant of Windows Mobile calledWindows Mobile for Smartphones.
An advantage of Windows Mobile isthe availability of Pocket PC applications that can be run on Microsoftbased smartphones. In addition to this, Windows Mobile devices supportminiature versions of many of its applications that are dominant in thedesktop PC market – like Microsoft Word and Excel, for example.Other advantages are the large Windows developer base, the abundant programming documentation/knowledge base, and the availabilityof powerful development tools that have been tailored from desktopwindows to work with the mobile operating systems.Windows Mobile 5.0 for Smartphones was released in 2005, and represents a significant improvement in their smartphone platform. Examplesof Windows Mobile 5 smartphones are the Samsung Blackjack, Cingular3125, and the Motorola Q.At the time of this writing, Windows Mobile 6 is just being introduced,with its smartphone platform being released as the Windows Mobile 6Standard Edition.OTHER SMARTPHONE OPERATING SYSTEMS21Microsoft has a relatively small portion of the smartphone market now(approximately 4–5% at the time of this writing), but its growth is veryrapid, especially in the United States.1.7.2BlackBerryResearch In Motion (RIM) makes a line of devices known as BlackBerrydevices.
RIM uses a proprietary Java-based operating system for thesedevices. BlackBerry devices are extremely popular, especially in theUnited States. They are known for their great email service and functionality through a technology known as push email. The platform is open tothird-party developers, but only for Java applications.The BlackBerry Pearl is an example of a BlackBerry smartphone.
ThePearl has a small form factor and includes a phone, browser, instantmessaging, multimedia player, and a camera.1.7.3 Palm OSPalm OS is a major player in the PDA market and has probably donemore for creating the mobile handset market than any other company.The Palm PDA products, which started with the Palm Pilot, are knownfor being simple to use. Palm’s operating system, known as Palm OS, islike Symbian OS in that Palm designed it specifically for lower-resourceportable devices.Since Palm is such a major force in the PDA market, and with wirelesscommunication introduced as early as the Palm VII devices, it’s onlynatural that Palm OS would be a good fit for the smartphone market. Oneof the biggest advantages is the large number of Palm PDA applicationsthat exist, which can also run on their smartphones. There is also asignificant base of Palm OS application developers and documentation.The Handspring Treo 650 is an example of a Palm OS-based smartphone.
It supports both GSM and CDMA (via different models). TheTreo 650 has all the standard smartphone features, like SMS, MMS, webbrowsing, and email, as well as the ability to connect to your PC via USB.It has a 320 × 320 pixel color display, a built-in thumb keyboard, andintegrated digital camera.Although Palm still plans to support Palm OS, they are now alsoshipping phones with the Microsoft Windows Mobile operating system.The Treo 700 w and 750 are examples of these.1.7.4LinuxSmartphones based on the open source Linux operating system have beenappearing on the market. There are many advantages to using an opensource operating system like Linux.
Free cost and tapping into the Linux22SMARTPHONES AND SYMBIAN OSopen source community is appealing. This has made Linux grow, notonly for the server and PC market space, but also in the embedded devicearea including handheld computers. Sharp, for example, has releasedLinux-based PDAs. Motorola is a notable supporter of Linux and hasreleased the A1200 smartphone based on this OS. Also, Motorola, NEC,Panasonic Mobile Communications, and Samsung Electronics, along withmobile operators NTT DoCoMo and Vodafone, have formed an alliancefor creating a unified, Linux-based operating system for mobile devices.Nokia has released a Linux-based tablet device called the Nokia N800.This device includes Wi-Fi and Bluetooth connectivity, a web browser,voice-over-IP support, a media player, email, and instant messaging.Since it is not based on Symbian OS, it does not use the S60 or Series80 UI platform, but has a UI based on the open source platform calledMaemo (http://www.maemo.org ).2Symbian OS Quick StartThis chapter provides a quick start guide for setting up your SymbianOS development environment, as well as walking through, building, andrunning an example program.If you already have your environment set up and have built SymbianOS software before, then you may be able to skip this chapter.
Or, if youwant to delay actual hands-on programming until you get more theoryunder your belt, you can return to this chapter later.2.1 What Do You Need to Get Started?The following are needed for developing Symbian OS smartphone software:2.1.1•A PC running Windows XP, 2000, or Vista (at least 1.5 GHz, 512MBRAM, and 2 GB free disk space is recommended).•The C++ SDK for your smartphone model.•A Windows development package (Win32 development tools withan Integrated Development Environment (IDE); Carbide.c++ is recommended).•A Symbian OS smartphone.•The PC suite used for communication between the PC and thesmartphone.Build Tools OverviewFigure 2.1 shows the basic development pieces. Symbian OS software isdeveloped and built on a host PC.
You can build your software to run on24SYMBIAN OS QUICK STARTDevelopment System Host PCWindows Development ToolsIDE: Editors, project toolsWIN32 buildtoolsDebuggerSmartphoneConnectionSuitee.g.NokiaN95Symbian OS SDKSmartphone EmulatorSmartphone target tools(ARM)Symbian OS core and platform-specific API libraries(target and emulator)Symbian generic build systemFigure 2.1 Development Toolsthe Symbian OS PC-based emulator that comes with the SDK, or you canbuild for the smartphone itself and load your program to the phone viathe PC suite through USB, IR, or Bluetooth technology.Once your application is completed, it’s deployed to users as aninstallation file, known as a SIS file.
The user can download this SIS filefrom a PC to a smartphone using their PC connection suite. Alternatively,they can retrieve it to the smartphone itself by downloading it froma WAP site or a website, or receiving it as an email attachment orBluetooth message, or saving it to a removable memory card, using a PCwith appropriate card writer, then putting the card into the phone andinstalling from there.2.1.2 What is the Symbian OS Emulator?The emulator is a Windows application that simulates a smartphoneentirely on the PC – complete with functional buttons and small screendisplay.
This allows you to run and debug Symbian OS software on yourPC as opposed to running on a real device. Why do this?•You avoid having to upload your code to the smartphone for eachcode/compile/debug iteration.WHAT DO YOU NEED TO GET STARTED?25•You can take advantage of the debugging support available from theWindows IDE, which includes single stepping and watch points.•You can experiment with smartphone development on various platforms without having to buy or borrow the smartphones for thoseplatforms.The emulator simulates the actual smartphone fairly well, with somedifferences that I will discuss in more detail in Chapter 5. Each SDK hasits own emulator to mimic the smartphone type that it is targeted for.You can even change the display resolution and orientation to match thevarious display modes of the target device so you can test your softwarein each of these modes.Figure 2.2 shows a sample emulator screen for the S60 platform.Figure 2.2 S60 Emulator2.1.3Getting the Symbian OS SDKYour first priority should be locating the correct C++ SDK for yoursmartphone.
Getting it is straightforward – they can be downloaded26SYMBIAN OS QUICK STARTfreely from the web on the phone manufacturer’s website or the Symbian website (http://developer.symbian.com/main/tools/sdks/index.jsp).Normally you need to register and then click through a license agreementbefore you can download the SDK. Make sure you follow all instructions.You may also need to download versions of Perl and Java runtime software. For example, the S60 3rd Edition SDK requires ActivePerl 518 andJava Runtime Environment 1.3.1 to be installed.2.1.4 Some Example SDKsThis section describes some example Symbian OS SDKs.