Symbian OS C++ for Mobile Phones (Volume 2)
The Symbian OS C++ for Mobile Phones (Volume 2) book, edited by Symbian press, is the follow up of Symbian OS C++ for Mobile Phones.
If you have a few months (or more!) experience on Symbian OS C++ development, this book is clearly a good investment as it covers topics that are currently not or not well documented in the available documentation. If you are a beginner, you may take advantage in buying the volume 1 or the Developing Series 60 Applications from EMCC/Nokia.
UI and application architecture
The UI and application architecture part is made of 4 chapters (~150 pages):
Symbian OS User Interfaces
A Running Application
Using Controls and Dialogs
Views and the View Architecture
The Symbian OS User Interfaces chapter is an introduction to Series 60 and UIQ widgets. It tries to highlight the similarities and differences between the classes of each of these environment which is useful when targeting both of them.
I especially liked the Running Application chapter: it describes in details all the steps performed by the operating system when starting and closing an application.
The books also details the use of compound controls (a control that contain other controls), views and view switching which are necessary to understand when creating applications with complex UIs.
Files
The file section is only made of one chpater, Files and the Filing System, and 40 pages. The book focus is clearly on on streams and stores and it teaches you how to use the RFileWriteStream and RFileReadStream classes to externalize/internalize data structures and how to organize your streams in a store (CDirectFileStore and CPersistentFileStore).
Some additional concept like use of .ini file and the structure of resources file are also briefly introduced.
Multimedia Services
The Multimedia Services chapter (~65 pages) is one of my favorites and I would buy the book only for this chpater: tt explains in detail the new Multimedia Framework (MMF) and how to use it for:
playing / recording audio, video and images
using the camera.
The audio and images encoding/decoding is specially well explained and detailed. So, if you need to deal with multimedia and don't know the difference between MatoPlayComplete, MapcPlayComplete, MaoscPlayComplete and MvpuoPlayComplete :
- don't worry, you are probably not alone
- click here.
The use of CImageDecoder and CImageEncoder classes to manipulate still or animated images is also well covered. And with the description of the camera ECam interface, you will have all the information you need to develop your own picture handling application.
Comms and Messaging
This chapter would need a full book to be covered in details. The 32 pages of the book will however present a short introduction to communications to most of the concept and data protocols used in a phone (TCP/IP, HTTP, Telnet, FTP, Bluetooth, Infrared, Wap, SMS/EMS, SMTP, POP3, IMAP4, OBEX, and MMS).
The book details the MTM APIs and focus on MMS messaging. Other protocols are unfortunately not covered.
Testing on Symbian OS
This last chapter of the book introduces several tools to test your application:
test coverage analysis
binary compatibility
automated test using the Test Driver
network emulator
profiler
measuring source code size.
Note that all of the topics above are covered in a few pages only: this is just a good presentation but you will have to do the learning by yourself. Further more, most of them depends on 3rd party tools you have to buy (test coverage, code size) or are only available to DevKit licensees (binary compatibility, profiler).
Conclusion
This is another good book on Symbian OS C++. It brings valuable information on Symbian application architecture and on the Multimedia Framework. This is then a must-have if you have some interest in these topics.
You will be able to buy this book at the Symbian Expo 2004, or you can order it from Amazon.







> Symbian OS C++ for Mobile Phones (Volume 2)
> Symbian OS C++ for Mobile Phones (Volume 2)
> Symbian OS C++ for Mobile Phones (Volume 2)