图书介绍
Symbian OS C++手机应用开发 第3卷PDF|Epub|txt|kindle电子书版本网盘下载
- (美)RichardHarrison,MarkShackman著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115204417
- 出版时间:2009
- 标注页数:516页
- 文件大小:160MB
- 文件页数:538页
- 主题词:C语言-程序设计-应用-移动通信-携带电话机
PDF下载
下载说明
Symbian OS C++手机应用开发 第3卷PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 起步1
1.1使用仿真器1
1.1.1启动仿真器1
1.1.2GUI样式2
1.2HelloWorld之文本版本4
1.2.1程序hellotext5
1.2.2项目规范文件7
1.2.3组件定义文件8
1.2.4从命令行生成8
1.2.5使用多个SDK10
1.2.6在Carbide.c++IDE中生成10
1.3小结10
第2章 Symbian操作系统概述12
2.1Symbian操作系统基础12
2.1.1关于内核13
2.1.2线程和进程模型16
2.1.3用户内存及内存管理17
2.1.4Symbian操作系统服务器17
2.1.5Symbian操作系统进程间通信18
2.1.6电源管理18
2.1.7定时器19
2.1.8可执行程序和共享库19
2.1.9可写静态数据的优化20
2.1.10文件和文件系统20
2.1.11平台安全21
2.2框架基础21
2.2.1Symbian操作系统C++21
2.2.2并发和活动对象21
2.2.3Symbian操作系统C++异常处理24
2.2.4Symbian操作系统C++命名规则25
2.3本书覆盖的API26
2.4小结27
第3章 Symbian操作系统C++28
3.1基本数据类型28
3.2命名约定29
3.2.1类名29
3.2.2数据名30
3.2.3函数名30
3.2.4宏名31
3.2.5间隔(Indentation)、分行(LineBreaks)和括号(Bracketing)31
3.3函数33
3.4API34
3.4.1函数类型35
3.4.2DLL和其他API元素35
3.4.3导出函数36
3.4.4虚函数和API36
3.5模板37
3.5.1瘦模板模式37
3.5.2模板中的数字38
3.6类型转换38
3.7类38
3.7.1接口39
3.7.2不良做法39
3.8设计模式40
3.9小结40
第4章 对象——内存管理、清理和错误处理42
4.1对象的创建与销毁42
4.1.1堆(动态对象)43
4.1.2程序栈(自动对象)44
4.2Symbian操作系统中的类的分类45
4.2.1T类和C类45
4.2.2R类46
4.2.3M类47
4.3错误处理48
4.3.1框架能处理的错误类型48
4.3.2严重错误49
4.3.3异常退出与捕获机制50
4.4清理栈51
4.4.1使用清理栈52
4.4.2不必要时不要使用清理栈53
4.4.3如果CleanupStack∷PushL()失败怎么办54
4.4.4CBase和清理栈54
4.4.5清理栈上的R类54
4.5两阶段构造55
4.5.1分离安全构造和不安全构造55
4.5.2在NewL()和NewLC()中封装ConstructL()57
4.6小结58
第5章 描述符59
5.1概述59
5.2描述符内部结构61
5.3文字63
5.4栈描述符63
5.5指针描述符64
5.5.1TPtrC描述符65
5.5.2类型2TPtr描述符65
5.5.3类型4TPtr描述符66
5.5.4使用TPtr∷Set()66
5.6堆描述符67
5.6.1HBuf描述符67
5.6.2RBuf描述符69
5.7窄、宽、中性的描述符73
5.8描述符和二进制数据74
5.9描述符函数75
5.9.1描述符作为参数75
5.9.2从函数中返回描述符78
5.10描述符的一些操作83
5.10.1描述符和文本控制台83
5.10.2转换描述符到数字84
5.10.3转换数字到描述符84
5.10.4外部化和内部化描述符84
5.10.5把二进制数据放到_LIT85
5.10.6描述符和字符串的转换85
5.11描述符的正确使用88
5.11.1不要声明TDesC或者Tdes变量88
5.11.2以引用传递TDesC和TDes88
5.11.3声明TDesC时不要忽略了const89
5.11.4运行时不要设置缓冲描述符的大小89
5.11.5不要将大的栈描述符放置在栈上89
5.11.6不要在堆上分配大的栈描述符90
5.11.7警惕TPtr∷=()(操作符)90
5.11.8警惕TPtr和C++传统不一致处90
5.11.9正确使用HBufC∷Des()91
5.11.10从描述符创建HBufC时使用Alloc()91
5.11.11警惕HBufC∷ReAllocL()和HBufC∷ReAlloc()91
5.11.12格式化时注意%s和%S的区别93
5.12操控描述符95
5.12.1折叠比较95
5.12.2校对比较95
5.12.3基本函数96
5.12.4操作数据96
5.12.5子字符串函数96
5.12.6格式化96
5.12.7TDesC函数97
5.12.8TDes函数97
5.12.9HBufC函数99
5.12.10RBuf函数99
5.12.11TBuf函数100
5.12.12TBufC函数100
5.12.13TPtr函数100
5.12.14TPtrC函数100
5.13小结101
第6章 活动对象102
6.1异步服务102
6.1.1初始化阶段103
6.1.2等待阶段1104
6.1.3键盘事件调度阶段104
6.1.4等待阶段2105
6.1.5定时器事件调度阶段105
6.1.6等待阶段3105
6.2多任务处理和抢占105
6.3更深入地研究活动对象106
6.3.1“Sethello”菜单项107
6.3.2“Startflashing”菜单项111
6.4工作方式112
6.5活动对象优先级115
6.6取消活动对象118
6.6.1处理一个不能运行的请求119
6.6.2正常处理后完成请求119
6.6.3取消请求发生较早120
6.6.4取消请求发生较晚121
6.6.5服务提供者异常终止时取消请求121
6.6.6异步服务器资源耗尽时取消请求121
6.7启动和终止调度器122
6.8理解游离信号122
6.8.1忘记设置对象为激活的122
6.8.2忘记设置请求为挂起123
6.8.3第二个请求123
6.8.4完成请求两次123
6.8.5以KRequestPending完成请求124
6.8.6设置已完成的请求的状态为KRequestPending124
6.8.7使用RThread∷RequestSignal()和活动对象框架125
6.8.8使用活动对象并调用User∷WaitForRequest()125
6.8.9将未完成活动对象从队列中移出125
6.8.10做出异步请求后调用异常退出函数125
6.9其他常见活动对象错误126
6.9.1直接调用DoCancel()126
6.9.2从析构函数调用Cancel()失败126
6.9.3调用Cancel()前检查IsActive()126
6.9.4没有正确实现DoCancel()127
6.9.5忽略错误处理127
6.9.6在RunL()中使用宏TRAP127
6.9.7在自我析构的RunL()中调用异常退出代码127
6.9.8用operator=()赋值TRequestStatus127
6.9.9异常退出异步函数128
6.9.10从异步函数返回错误值128
6.10状态机128
6.11长时间运行任务和活动对象131
6.12小结135
第7章 文件和文件系统136
7.1基于文件的应用程序136
7.2驱动盘和文件类型137
7.3文件系统服务137
7.3.1文件规范137
7.3.2操作文件名138
7.3.3文件服务器会话138
7.3.4目录140
7.3.5文件141
7.3.6共享文件句柄142
7.3.7RFileBuf143
7.3.8结论144
7.4流145
7.4.1基类145
7.4.2使用操作符<<和>>146
7.4.3内部化和外部化146
7.4.4写入和读取流函数148
7.5存储150
7.5.1创建持久性存储152
7.5.2读取持久性存储153
7.5.3永久性存储154
7.5.4嵌套存储155
7.5.5存储和应用程序架构157
7.6词典存储和INI文件159
7.7小结160
第8章 进程间通信机制162
8.1概述162
8.1.1客户端—服务器会话IPC162
8.1.2发布和订阅IPC163
8.1.3消息队列IPC165
8.2客户端—服务器IPC166
8.2.1建立会话167
8.2.2启动服务器167
8.2.3使用会话168
8.2.4清理170
8.2.5会话和子会话170
8.3发布和订阅IPC171
8.3.1拥有属性171
8.3.2使用属性172
8.3.3决定性173
8.4消息队列IPC173
8.4.1创建消息队列174
8.4.2使用消息队列174
8.5应该使用哪种IPC机制175
8.5.1客户端—服务器175
8.5.2发布和订阅175
8.5.3消息队列176
8.6小结176
第9章 平台安全和应用程序发布178
9.1释放应用程序178
9.2平台安全的工作方式178
9.2.1能力179
9.2.2通过Symbian签名授权179
9.2.3不带Symbian签名授权179
9.2.4一次性授予180
9.3如何支持平台安全180
9.3.1项目定义文件180
9.3.2安全标识180
9.3.3数据锁定181
9.4准备发布应用程序181
9.4.1生成应用程序181
9.4.2产生打包文件182
9.4.3生成最终的SIS文件183
9.5Symbian签名概述184
9.5.1测试标准184
9.5.2签名或者不签名185
9.5.3开发者证书186
9.5.4签名流程187
9.6安装SIS文件188
9.7能力列表188
9.8小结189
第10章 调试和仿真器190
10.1使用仿真器190
10.1.1磁盘映射191
10.1.2仿真器按键192
10.1.3通信192
10.2仿真器调试194
10.2.1Carbide.c++IDE194
10.2.2CodeWarriorIDE195
10.2.3仿真器调试键196
10.2.4仿真器设置197
10.2.5仿真器测试证书198
10.2.6尽可能发挥仿真器日志文件的作用198
10.2.7日志200
10.2.8使用eshell201
10.2.9使用DEXC工具202
10.2.10内存测试203
10.3联机调试205
10.3.1联机调试代理205
10.3.2仿真器调试与联机调试205
10.4其他工具206
10.5小结207
第11章 应用程序框架208
11.1Symbian操作系统应用程序框架208
11.2S60和UIQ平台应用程序框架209
11.3图形化的“HelloWorld!”程序210
11.3.1类结构210
11.3.2产生示例代码211
11.3.3项目描述文件211
11.3.4应用程序入口213
11.3.5Application类213
11.3.6Document类214
11.3.7应用程序UI215
11.3.8应用程序视图217
11.3.9资源文件219
11.3.10注册文件220
11.4小结221
第12章 简单图形应用程序222
12.1在S60上实现游戏223
12.1.1应用程序类223
12.1.2文档类224
12.1.3应用程序UI类224
12.1.4控制器类227
12.1.5引擎类230
12.1.6视图类231
12.1.7命令菜单237
12.2UIQ3的不同239
12.2.1应用程序UI类239
12.2.2视图类240
12.2.3命令243
12.2.4持久性246
12.3小结247
第13章 资源文件248
13.1为什么需要针对Symbian的资源编译器248
13.2资源文件语法248
13.2.1STRUCT语句249
13.2.2RESOURCE语句250
13.2.3ENUM语句251
13.2.4NAME语句251
13.3位图和图标251
13.3.1转换位图253
13.3.2bmconv工具254
13.3.3可分级的向量图形254
13.4更新资源文件255
13.5应用程序注册文件255
13.6可本地化的字符串256
13.7多资源文件258
13.8编译资源文件259
13.9已编译资源文件的内容260
13.10读取资源文件262
13.10.1通过CCoeEnv262
13.10.2通过BAFI262
13.11小结263
第14章 视图和视图架构264
14.1视图架构264
14.1.1UIQ视图265
14.1.2S60视图266
14.1.3移植性266
14.1.4应用程序UI的角色266
14.1.5默认视图267
14.1.6观察器268
14.2MCoeView接口268
14.2.1视图ID268
14.2.2构造269
14.2.3激活和禁用269
14.3实例应用程序的介绍269
14.3.1历史视图270
14.3.2额外的S60考虑275
14.4创建和管理视图275
14.4.1构造和注册275
14.4.2激活和禁用276
14.5实现MCoeView接口277
14.5.1视图ID277
14.5.2激活视图277
14.5.3禁用视图279
14.5.4构造视图279
14.5.5历史视图内容280
14.6命令菜单282
14.6.1对UIQ做出的改变282
14.6.2对S60作出的改变284
14.7小结287
第15章 控件288
15.1什么是控件288
15.2控件类型289
15.2.1简单控件289
15.2.2复合控件290
15.3控件布局292
15.4处理键和触笔事件294
15.4.1键事件294
15.4.2焦点298
15.4.3触笔事件299
15.5观察控件301
15.6绘制控件302
15.7备份窗口307
15.8后台备份窗口308
15.9变灰控件和不可见控件309
15.10小结310
第16章 对话框311
16.1对话框311
16.2简单对话框312
16.2.1简单单页对话框312
16.2.2标准对话框313
16.3复杂对话框314
16.3.1焦点更改314
16.3.2状态更改315
16.4单页对话框315
16.5多页对话框316
16.5.1UIQ变形316
16.5.2S60变形318
16.6对话框API321
16.6.1资源规范321
16.6.2框架函数322
16.7对话框的常用控件324
16.8对话框中的定制控件325
16.9小结327
第17章 图形显示328
17.1绘图基础328
17.1.1控件329
17.1.2获取图形上下文329
17.1.3绘制矩形330
17.1.4绘制文本330
17.1.5垂直对齐331
17.2CGraphicsContextAPI331
17.2.1坐标类332
17.2.2区域相关类332
17.2.3设置图形上下文333
17.2.4绘制函数333
17.3绘制和重绘335
17.3.1模型、视图和控制器模式336
17.3.2Draw()约定337
17.4绘制控件339
17.4.1绘制到视图的一部分339
17.4.2DrawNow()模式341
17.5屏幕共享342
17.5.1CONE342
17.5.2拥有窗口和寄宿控件343
17.5.3复合控件345
17.5.4绘制的更多知识346
17.6CCoeControl的绘制支持350
17.6.1控件环境350
17.6.2拥有窗口和寄宿控件351
17.6.3组件控件352
17.6.4控件位置与大小352
17.6.5绘制函数353
17.7特殊效果354
17.7.1动画354
17.7.2Uikon调试键355
17.7.3控件上下文356
17.7.4滚动356
17.7.5透明窗口357
17.8窗口服务器功能357
17.8.1无闪烁重绘357
17.8.2重绘存储358
17.9与设备和尺寸无关的图形359
17.9.1开发人员对于设备无关代码的探索360
17.9.2应用程序中与尺寸和目标无关的绘制360
17.9.3与设备无关的绘制362
17.9.4深入介绍GDI370
17.10小结376
第18章 图形交互378
18.1按键、触笔和命令的基础知识378
18.2对于交互的用户需求379
18.3一些基本抽象380
18.3.1程序员需求380
18.3.2复合控件381
18.3.3键分布和焦点381
18.3.4变灰和可见性381
18.3.5验证382
18.3.6控件观察器382
18.3.7容器384
18.4处理键事件384
18.4.1控件栈385
18.4.2焦点386
18.4.3文本光标387
18.5处理触笔事件387
18.5.1交互范例387
18.5.2选取相关性387
18.5.3抓取触笔按下控件388
18.5.4捕获触笔388
18.5.5获得高分辨率的触笔事件388
18.5.6如何处理触笔事件389
18.6窗口服务器和控件环境API的更多知识390
18.6.1应用程序与窗口服务器的通信390
18.6.2窗口类型391
18.7小结393
第19章 插件和扩展性395
19.1系统服务395
19.1.1通信和消息服务395
19.1.2多媒体服务395
19.1.3RDBMS396
19.1.4任务调度器396
19.1.5EZLIB396
19.1.6XML框架396
19.1.7系统服务的更多参考397
19.2什么是插件397
19.2.1即时消息发送客户端应用程序如何工作398
19.2.2多态性398
19.2.3打包二进制399
19.2.4加载多态DLL400
19.2.5管理插件DLL401
19.3ECOM库402
19.3.1使用ECOM插件402
19.3.2设计插件接口类403
19.3.3编写ECOM插件403
19.3.4集成到一起406
19.3.5REComSession∷FinalClose()407
19.3.6ECOM的使用408
19.3.7参考文献408
19.4Symbian操作系统中的插件408
19.4.1消息MTM408
19.4.2通信扩展模块408
19.4.3ETel扩展模块409
19.4.4ESOCK协议模块409
19.5小结409
第20章 通信和消息发送服务410
20.1连三子游戏中的通信410
20.2控制器和传输间的通信411
20.3串口通信413
20.3.1打开串口连接414
20.3.2通过串口连接交换数据415
20.3.3红外上的串口通信416
20.3.4蓝牙上的串口通信417
20.4基于套接字的通信417
20.4.1套接字服务器418
20.4.2基于套接字的红外连接418
20.4.3基于套接字的蓝牙连接420
20.4.4使用蓝牙连接两个手机421
20.5消息发送429
20.5.1消息服务器429
20.5.2消息树430
20.5.3使用SendAs服务器发送消息430
20.5.4接收消息431
20.5.5email432
20.5.6短消息服务(SMS)433
20.5.7多媒体消息服务(MMS)434
20.6安全性438
20.6.1数据验证439
20.6.2平台安全440
20.7小结440
第21章 多媒体服务441
21.1多媒体框架441
21.1.1对媒体格式的支持442
21.1.2API概述442
21.1.3音频剪辑播放445
21.1.4通知音频资源的可用性447
21.1.5音频剪辑录制448
21.1.6音频流化452
21.1.7音调播放455
21.1.8视频播放456
21.1.9视频录制457
21.1.10使用DevSound458
21.1.11编写控制器插件460
21.2图像转换库462
21.2.1API概述462
21.2.2图像解码463
21.2.3图像编码467
21.2.4图像变换472
21.3照相机API472
21.3.1选择相机473
21.3.2配置照相机473
21.3.3显示取景器474
21.3.4捕获静态图像475
21.4调谐器API477
21.4.1调谐477
21.4.2调谐器音频播放480
21.4.3调谐器音频录制480
21.4.4使用RDS数据481
21.5小结482
第22章 SQLRDBMS介绍483
22.1RDBMS概述483
22.2SQL基础484
22.2.1基本SQL术语484
22.2.2更多的SQL功能485
22.2.3使用多数据库486
22.2.4存储过程、事件和触发器487
22.2.5SQL语法488
22.3SymbianSQL服务器组件架构492
22.3.1客户端API493
22.3.2从语句中返回数据库500
22.3.3平台安全506
22.4Symbian操作系统错误码508
22.5小结509
附录A开发人员资源510
术语表514
参考文献516