Book description
If you want to write mobile applications without the idioms of Symbian C++, have existing software assets that you'd like to re-use on Symbian devices, or are an open source developer still waiting for an open Linux-based device to gain significant market penetration, this is the book for you!
Beginning with an introduction to the native programming environments available and descriptions of the various technologies and APIs available, you will first learn how to go about porting your code to the Symbian platform.
Next, you will discover how to port to Symbian from other common platforms including Linux and Windows.
Finally, you can examine sample porting projects as well as advanced information on topics such as platform security.
The author team consists of no less than six Forum Nokia Champions, together with technical experts from the Symbian community, either working on Symbian platform packages or third party application development. With this book, you will benefit from their combined knowledge and experience.
In this book, you will learn:
How to port and make use of existing open source code to speed up your development projects
How to port applications from other popular mobile platforms to the Symbian platform
How to write code that is portable across multiple platforms
The APIs in the Symbian platform for cross-platform development, such as support for standard C/C++ and Qt.
Table of contents
- Copyright
- About this Book
- Author Biographies
- Author's Acknowledgements
- Symbian Acknowledgements
- 1. Introduction
- 2. The Porting Process
-
3. Symbian Platform Fundamentals
- 3.1. In the Beginning
- 3.2. Naming Guidelines and Code Conventions
- 3.3. Data Handling
-
3.4. String Handling: Descriptors
- 3.4.1. Memory Management
- 3.4.2. Character Size
- 3.4.3. Descriptor Data: Text or Binary?
- 3.4.4. Symbian C++ Descriptor Classes
- 3.4.5. Descriptor Indigestion?
- 3.4.6. Descriptors as Function Parameters
- 3.4.7. Using the Descriptor APIs
- 3.4.8. Overview
-
3.5. Error Handling and Memory Management
- 3.5.1. Leaves and Exceptions
- 3.5.2. Cleanup Stack
- 3.5.3. Leaves and the Cleanup Stack
- 3.5.4. Two-Phase Construction
- 3.5.5. Panics
- 3.6. Event-Driven Programming
- 3.7. Writeable Static Data
- 3.8. Multiple Inheritance
- 3.9. Summary
-
4. Standard APIs on the Symbian Platform
- 4.1. P.I.P.S. Is POSIX on Symbian OS
- 4.2. Open C
- 4.3. The STLport, uSTL and Open C++
- 4.4. Which Version of Symbian OS?
- 4.5. How to Use the APIs
- 4.6. Examples: SoundTouch and SoundStretch
- 4.7. Known Limitations, Issues and Workarounds
- 4.8. Summary
- 5. Writing Hybrid Code
- 6. Other Port Enablers
- 7. Porting from Mobile Linux
-
8. Porting from Microsoft Windows
- 8.1. Architecture Comparison
- 8.2. Application Compatibility
- 8.3. Development Languages and SDKs
- 8.4. SDKs and APIs
- 8.5. Porting an Application
-
8.6. Windows-specific Issues
- 8.6.1. Unsupported Features
- 8.6.2. Windows Registry
- 8.6.3. Databases
- 8.6.4. Inter-process and Inter-thread Communication
- 8.6.5. Binary Executables and DLLs
- 8.6.6. Compiler Differences
- 8.6.7. Functions Exported by Ordinal
- 8.6.8. Code Signing
- 8.6.9. Capabilities
- 8.6.10. UIDs
- 8.6.11. Installer
- 8.6.12. Localization
- 8.6.13. Component Object Model
- 8.7. Signing and Security
- 8.8. Porting from C# and .NET
- 8.9. Summary
- 9. Porting from Other Mobile Platforms
-
10. Porting a Simple Application
- 10.1. Selecting a Project
- 10.2. Analyzing the Code
- 10.3. Setting Up the Development Environment
- 10.4. Integrating with the Symbian Build System
- 10.5. Getting It to Compile
- 10.6. Getting It to Work
- 10.7. Extensions Specific to Mobile Devices
- 10.8. Deploying and Testing on Target Hardware
- 10.9. Re-integrating
- 10.10. Summary
- 11. Porting Middleware
- 12. Porting a Complex Application
- 13. The P.I.P.S. Architecture
-
14. Security Models
- 14.1. The Capability Model
- 14.2. Process Identity
- 14.3. Data Caging
- 14.4. Code-Signing and Certification
- 14.5. Certification and Platform Security
- 14.6. Development Code
- 14.7. Tool Support
- 14.8. Symbian Platform Security Compared with Other Models
- 15. Writing Portable Code and Maintaining Ports
- A. A Techniques for Out-of-Memory Testing
-
References
Product information
- Title: Porting to the Symbian Platform: Open Mobile Development in C/C++
- Author(s):
- Release date: November 2009
- Publisher(s): Wiley
- ISBN: 9780470744192
You might also like
article
Run Llama-2 Models Locally with llama.cpp
Llama is Meta’s answer to the growing demand for LLMs. Unlike its well-known technological relative, ChatGPT, …
book
Extended STL, Volume 1: Collections and Iterators
“Wilson’s menu of STL treatments will no doubt be good eating for generic programming adherents, ardent …
video
GenAI Essentials for Everyone - Overview
Our team of experts has hand-selected and organized the most crucial concepts and practical applications of …
book
Mac OS X Panther for Unix Geeks, Second Edition
With its rep for being the sort of machine that won't intimidate even the most inexperienced …