
本书全面介绍用Symbian OS进行手机应用程序开发的基础知识。主要内容包括Symbian OS简介、开发工具介绍、Symbian OS构建环境、进程、线程、线程同步、异步函数、TCP/IP网络编程以及GUI编程等知识。 本书不仅适用于Symbian OS手机开发初学人员,对于具有一定移动开发经验的程序员也有重要的参考价值。 第1章 智能手机与Symbian OS 11.1 智能手机的概念 11.2 智能手机的特点 21.2.1 智能手机的通信方式 21.2.2 移动通信的发展 21.2.3 GSM 31.2.4 CDMA 31.2.5 CSD 41.2.6 GPRS 41.2.7 HSCSD 41.2.8 EDGE 51.2.9 UMTS 51.3 智能手机消息传送 51.3.1 SMS 51.3.2 MMS 51.3.3 电子邮件 61.3.4 传真 61.4 Web浏览 61.4.1 WAP 61.4.2 HTML 61.5 本地设备通信功能 71.5.1 USB/串行电缆连接 71.5.2 红外线(IR) 71.5.3 蓝牙 71.6 移动操作系统 71.7 Symbian简史 81.7.1 Symbian OS概述 91.7.2 一种操作系统满足多种需求 91.7.3 应用程序 101.8 Symbian OS智能手机 101.8.1 Sony Ericsson P900 101.8.2 Nokia 6600 111.8.3 Nokia 9500 Communicator 121.9 其他智能手机操作系统 121.9.1 Palm OS 131.9.2 Microsoft Smartphone OS 131.9.3 Linux 14第2章 Symbian OS快速入门 152.1 开始学习前需具备的条件 152.1.1 构建工具综述 152.1.2 什么是Symbian OS模拟器 162.1.3 获取Symbian OS SDK 162.1.4 获取Windows开发包 172.1.5 SDK实例 182.1.6 Windows 是惟一支持开发系统的操作系统吗 192.2 启动开发工具 192.2.1 模拟器快速测试 192.2.2 Windows开发包的快速测试 202.2.3 实例构建 202.2.4 解决问题 232.3 简单示例程序 242.3.1 应用程序组件 252.3.2 SimpleEx综述 252.3.3 头文件 262.3.4 资源文件 312.3.5 源文件 362.3.6 项目构建文件 392.4 模拟器上的程序构建和执行 412.5 智能手机程序的构建 42第3章 Symbian OS体系结构 453.1 Symbian OS的组件 453.2 Symbian OS的多任务处理 463.2.1 线程 463.2.2 进程 463.3 动态链接库 473.3.1 DLL类型 473.3.2 DLL中的静态数据 473.4 客户/服务器模型 483.5 Symbian OS中的存储器 493.5.1 内存如何寻址 503.5.2 Symbian OS的内存块 513.5.3 内存中的进程 513.5.4 Symbian OS的虚拟内存映射 513.5.5 进程切换—详细例子 523.5.6 进程相互间的保护 533.5.7 进程切换中的性能 533.5.8 固定进程 543.6 内核 543.6.1 硬件抽象 553.6.2 用户库 553.6.3 内核可执行程序和服务器 553.7 活动对象和异步函数 563.8 什么是多态DLL 573.9 GUI体系结构 593.9.1 定制UI 593.9.2 GUI框架简介 593.10 高性能图形 613.11 通信体系结构 613.12 应用程序引擎、服务和协议 64第4章 Symbian OS编程基础 664.1 在Symbian OS中使用C++ 664.2 非标准C++特征 664.3 基本数据类型 674.4 Symbian OS类 684.4.1 数据类型类 684.4.2 堆类 684.4.3 资源类 694.4.4 接口类 704.5 异常错误处理和清理 714.5.1 通过返回码进行错误处理 724.5.2 异常退出/捕获机制 724.5.3 陷阱和TRAPD宏 744.5.4 异常退出函数 754.5.5 后缀“L”的意义 754.5.6 清理栈 764.5.7 对象类型和清理栈 774.5.8 更复杂的清理 784.5.9 其他清理函数 794.5.10 LC函数 804.5.11 创建对象时的异常退出 814.5.12 构造函数中的异常退出 824.5.13 双阶段构造函数 824.5.14 严重错误 834.5.15 断言宏 844.6 库 844.6.1 创建静态库 854.6.2 创建DLL 854.6.3 导入库 874.6.4 RLibrary API 874.6.5 多态DLL 874.6.6 DLL中的静态数据 884.7 可执行文件 884.8 命名约定 904.9 小结 91第5章 Symbian OS构建环境 935.1 SDK目录结构 935.1.1 epoc32目录 935.1.2 示例目录 945.1.3 文档目录 955.2 构建系统概述 955.3 构建目标 955.4 基本构建流程 965.4.1 进一步了解abld.bat 985.4.2 MMP文件 985.5 什么是UID 1005.6 模拟器 1015.6.1 运行模拟器 1015.6.2 模拟器配置 1015.6.3 模拟器与设备的功能比较 1035.7 构建DLL 1045.7.1 用于DLL的mmp文件 1045.7.2 通过序号引用函数 1055.7.3 RLibrary API类 1065.8 DLL接口冻结 1065.9 在智能手机中安装应用程序 1105.9.1 文件存放的位置 1115.9.2 PKG文件的格式 1125.9.3 高级PKG文件选项 1155.9.4 语言支持 1175.10 在SDK间切换 1195.10.1 SDK版本早于Symbian OS v7.0的情况 1205.10.2 devices命令如何工作 1205.10.3 所有SDK均为Symbian OS v7.0之前版本的情况 121第6章 字符串、缓冲和数据集合 1226.1 文本控制台简介 1226.2 字符串和二进制数据的描述符 1256.2.1 字符串与二进制数据的比较 1256.2.2 防止内存溢出 1256.2.3 简单的描述符示例 1266.3 描述符类 1276.3.1 描述符基类 1296.3.2 字符串文字 1306.3.3 缓冲描述符 1316.3.4 指针描述符 1346.3.5 堆描述符 1366.4 描述符方法 1396.4.1 不可修改的方法 1396.4.2 写入描述符数据的方法 1436.4.3 将描述符作为数组使用 1506.
阅读更多