第1章 WAP简介 1
1.1 什么是WAP 2
1.1.1 为什么WAP如此重要 3
1.1.2 WAP对消费者的好处 5
1.2 WAP的历史 6
1.2.1 WAP出现之前 6
1.2.2 WAP论坛 7
1.2.3 WAP的主题 7
1.3 WAP的体系结构 8
1.3.1 WAP模型 9
1.3.2 无线标记语言(WML) 9
1.3.3 WAP的发展 10
1.3.4 为适应无线网络的局限性而进行调整 10
1.4 WAP的商业案例 14
1.4.1 WAP服务 15
1.4.2 为什么使用WAP 19
1.5 WAP的未来 20
第2章 如何设计良好的WAP应用程序 22
2.1 用户的观点 23
2.1.1 易于使用 24
2.1.2 为用户设计 24
2.2 今天的WAP微浏览器问题是什么 26
2.2.1 编写通用的WML界面 27
2.2.2 微浏览器市场定位 28
2.3 怎样设计一个良好的WAP应用程序 29
2.3.1 应用程序设计过程 30
2.3.2 常见的设计问题 35
第3章 用户界面 37
3.1 用户界面基础 38
3.2 窄带 40
3.3 屏幕尺寸很小 40
3.4 文本输人 41
3.4.1 按键次数 41
3.4.2 密码文字输人 42
3.4.3 应用程序个性化 42
3.4.4 数据字段输人 43
3.5 使用缓存 44
3.6 WML卡片的类型 45
3.6.1 选项卡片 45
3.6.2 输人卡片 47
3.7 Back按钮 48
3.6.3 显示卡片 48
3.8 图形 49
第4章 WAP开发工具和软件 50
4.1 编辑器和模拟器 52
4.1.1 WAP编辑器 52
4.1.2 WAP模拟器 54
4.2 软件开发工具箱(SDK)和集成开发环境(IDE) 57
4.3 图像转换 58
4.4 小结 59
第5章 使用WML 60
5.1 WML的基础知识 61
5.1.1 WAP和Web 62
5.1.2 编写WML代码 63
5.2 Hello World示例 64
5.2.1 文档序言 65
5.2.2 卡片组的页眉 66
5.2.3 第一个卡片 66
5.2.4 第二个卡片 67
5.2.5 卡片组的页脚 67
5.3 一个服务站点的例子 67
5.3.1 使用多个卡片组 68
5.3.2 创建服务站点 68
5.3.3 卡片中的内容 69
5.3.4 图形 70
5.3.5 包含图形的服务站点 72
5.3.6 创建链接 75
5.3.7 包含链接的WML站点 75
5.3.8 模板 78
第6章 交互性:表单和用户输入 80
6.1 选项菜单(选择) 81
6.1.1 在诺基亚上的选择 82
6.1.2 在Phone.com上的选择 82
6.1.3 选项组 83
6.2 再次介绍模板 86
6.3 事件 92
6.3.1 onenterbackward 92
6.3.2 onenterforward 95
6.3.3 onpick 96
6.3.4 outimer 97
6.4 变量 98
6.4.1 使用变量 99
6.4.2 设置变量的其他方法 102
6.5 input标记 104
6.6 小结 109
第7章 使用WML Script添加功能 110
7.1 什么是WML Script 111
7.2 WML Script的规则 112
7.2.1 区分大小写 113
7.2.2 空格和换行 113
7.2.3 注释 113
7.2.4 语句 114
7.2.5 代码块 115
7.3 变量 115
7.4 运算符 117
7.4.1 赋值运算符 117
7.4.3 按位运算符 118
7.4.2 算术运算符 118
7.4.4 累加和累减运算符 119
7.4.5 逻辑运算符 120
7.4.6 比较运算符 121
7.4.7 联结字符串 123
7.4.8 逗号 123
7.4.9 typeof运算符 123
7.4.10 isvalid运算符 124
7.4.11 条件运算符 125
7.4.12 运算符优先级 126
7.5 控制结构 127
7.5.1 if语句 127
7.5.2 while语句 128
7.5.3 for语句 129
7.5.4 停止循环或跳过不需要的循环语句 130
7.6 保留字 131
7.7 函数 132
7.7.1 参数 133
7.7.2 调用函数 133
7.8 标准库 136
7.8.1 Dialogs库 137
7.8.2 Float库 137
7.8.3 Lang库 138
7.8.4 String库 139
7.8.5 URL库 140
7.8.6 WML Brower库 141
7.9 数组 141
7.10.1 外部文件 143
7.10 编译指令 143
7.10.2 访问控制 144
7.10.3 无数据 145
7.11 通用编码原则 146
第8章 数据库驱动的WAP 147
8.1 ASP(活动服务器页) 149
8.1.1 ASP和WAP 150
8.1.2 ASP对象模型 151
8.2 ActiveX数据对象(ADO) 155
8.2.1 物理连接数据库 156
8.2.2 查询数据库 156
8.2.3 使用返回的数据 157
8.2.4 清理 157
8.2.5 关于连接的额外说明 158
第9章 动态的WAP应用程序 159
9.1 WORLDWIDE-DANCE-WEB的WAP站点 160
9.1.1 数据流 160
9.1.2 创建数据库 161
9.1.3 编写代码 164
9.2 小结 181
第10章 转换现有的Web站点 183
10.1 为什么要将现有的HTML Web站点转换为WAP 184
10.1.1 应该转换什么 184
10.1.2 转换方法 185
10.2 HTML转换示例 189
10.3 小结 200
第11章 移动商务和安全性 201
11.1.1 什么是可接受的安全级别 202
11.1 安全类型以及为什么安全是必需的 202
11.1.2 WAP有多安全 203
11.2 加密简史 203
11.3 无线传输层安全 206
11.4 小结 208
第12章 推技术和信息通信业务 209
12.1 推技术 210
12.2 信息通信业务 213
12.2.1 位置敏感的信息 213
12.2.2 信息通信业务的应用 214
12.3 推技术与信息通信业务的结合 215
12.4 小结 216
第13章 WAP的未来 217
13.1 考虑到了用户的技术 218
13.2 蓝牙——摆脱束缚 219
13.3 Voice XML——无线电话机的新趋势 220
13.4 信息通信业务——我们知道您在哪里 222
13.5 全部结合起来 223
第14章 WML Script参考 225
14.1 区分大小写 226
14.2 空格和空行 226
14.3 注释 227
14.4 常量 228
14.4.1 整型常量 228
14.4.2 浮点型常量 228
14.4.3 字符串常量 229
14.4.4 布尔型变量 229
14.5 保留字 230
14.4.5 无效变量 230
14.6 变量 231
14.6.1 变量声明 231
14.6.2 变量的作用域和生命期 232
14.7 数据类型 232
14.8 编译指令 233
14.8.1 外部文件 234
14.8.2 访问控制 234
14.8.3 元数据 235
14.9 运算符 236
14.9.1 赋值运算符 236
14.9.2 算术运算符 237
14.9.3 逻辑运算符 238
14.9.5 比较运算符 239
14.9.4 字符串运算符 239
14.9.6 逗号运算符 240
14.9.7 条件运算符 240
14.9.8 typeof运算符 241
14.9.9 isvalid运算符 241
14.10 表达式 241
14.11 函数 242
14.11.1 函数声明 242
14.11.2 函数调用 243
14.12 语句 244
14.12.1 空语句 244
14.12.2 表达式语句 244
14.12.3 块语句 245
14.12.4 变量语句 245
14.12.7 for语句 246
14.12.5 if语句 246
14.12.6 while语句 246
14.12.8 break语句 247
14.12.9 continue语句 247
14.12.10 return语句 248
14.13 库 248
14.13.1 表示约定 248
14.13.2 Lang库 249
14.13.3 Float库 255
14.13.4 String库 259
14.13.5 URL库 269
14.13.6 WML Brower库 275
14.13.7 Dialogs库 278
14.13.8 Console库 280