內容簡介
air允許利用現有的web開發技能(包括flash、flex、html、javascript、ajax) 優勢,建立和配置跨平台(或跨作業系統)的桌面ria(rich internet applications)套用。air能使開發者在熟悉的環境下工作,利用自己覺得最舒適的工具,並且通過支持flash、flex、html、 javascript和ajax,去建立接近需要的儘可能好的體驗。
本書的特色在於提供了豐富的實例,這些實例都有很強的套用價值,比較典型,覆蓋很廣的知識層面,且容易上手;每個實例都在光碟中有配套的項目源檔案,讀者可從光碟中找到對應的實例來學習和研究。
本書適合air開發人員和對air開發感興趣的讀者閱讀和參考。
作者簡介
郭少瑞(Neo Guo) 致力於RIAMeeting社區工作的組織和展開,以及Adobe相關開發類工具和解決方案的開發文檔的本地化。 RIAMeeting作為國內最具影響力的RIA開發者交流聚會,已經成為不少開發者藉以分享和討論的平台。在實踐中對 RIA相關技術有著深入研究(主要是 Adobe對 RIA方向的解決方案,包括AIR,Flash,Flex),撰寫多篇關於 RIA相關技術開發技巧和指南的文章,其中AIR相關的文檔居多,被多家技術媒體轉載,包括藍色理想, 52RIA等等。
目錄
part 1 ria與air .
第1章 談談ria 3
1.1 了解ria 4
1.2 ria的主流技術 5
1.3 是web還是桌面 7
1.4 ria中的air 8
1.5 題外話一:用戶體驗設計 9
1.6 題外話二:轉換思維模式 10
第2章 adobe air 11
2.1 什麼是adobe air 12
2.2 air和第三方打包軟體的對比 14
2.3 air的安全性 15
2.4 安裝air運行時及例程 16
2.5 分發/安裝/運行air應用程式 18
2.5.1 下載和安裝air套用 19
2.5.2 使用air installer badge部署線上安裝 20
2.5.3 數字證書 22
2.6 air的開發調試環境與設定 23
2.6.1 html/ajax開發者 23
2.6.2 flash/flex開發者 25
.2.7 air的檔案結構 26
2.7.1 解析air安裝包 26
2.7.2 了解配置檔案 27
2.7.3 air的安裝目錄 29
part 2 使用ajax開發air套用
第3章 ajax air概述 33
3.1 ajax與air平台之間的聯繫 34
3.2 開發前期準備 36
3.2.1 下載air平台運行時以及開發工具包 36
3.2.2 集成開發環境 38
3.2.3 用html/js創建一個簡單的程式 40
3.2.4 使用dreamweaver外掛程式快捷打包 45
3.2.5 利用數字認證簽署應用程式 47
3.3 如何分發air程式 49
第4章 基於webkit網頁引擎的開發 51
4.1 webkit引擎簡介 52
4.1.1 javascript與air的關係 53
4.1.2 javascript運行環境下的對象層次 54
4.1.3 nativewindow/nativeapplica-tion/htmlloader淺析 55
4.2 uri協定/cookies 56
4.3 剪貼簿對象 58
4.3.1 使用剪貼簿 58
4.3.2 剪貼簿的高級套用 62
4.4 拖放功能 64
4.4.1 默認的拖放行為 64
4.4.2 html拖放的相關事件回放 65
4.4.3 html元素的拖放 69
4.4.4 拖放示例 71
4.4.5 非程式沙箱的置落(drop)處理 74
4.5 引入pdf內容 75
4.6 導入xml數據 77
4.7 ajax的安全模型 80
4.7.1 桌面程式與web程式在安全機制上的區別 80
4.7.2 沙箱的概念 81
4.7.3 程式沙箱vs非程式沙箱 82
4.7.4 沙箱的使用技巧 84
4.7.5 使用xmlhttprequest對象 85
4.7.6 小結 87
第5章 javascript調控api精講 89
5.1 api入門 90
5.2 創建用戶界面 92
5.2.1 視窗基礎 93
5.2.2 創建nativewindow 95
5.2.3 製作個性化窗體 101
5.2.4 多螢幕控制 104
5.2.5 創建選單 105
5.2.6 適應os的界面 110
5.2.7 像素曲體器 111
5.3 檔案訪問和保存 115
5.3.1 常規磁碟操作 116
5.3.2 檔案寫操作 118
5.3.3 讀取檔案 121
5.3.4 filemode總述 124
5.4 內嵌資料庫的存儲操作 125
5.4.1 創建/連線sqlite資料庫 126
5.4.2 數據的增刪改查 129
5.4.3 數據的查詢 131
5.4.4 資料庫的使用技巧 134
5.5 網路連線和訪問外部伺服器 138
5.5.1 檢測網路連通性 139
5.5.2 連線webservice 140
5.5.3 socket通訊 143
5.6 音效控制 147
5.6.1 音效模型 147
5.6.2 創建mp3播放器 150
5.7 二進制數據與加密 151
5.7.1 使用位元組數組 151
5.7.2 數據安全加密 154
5.8 ajax用戶學習actionscript 156
5.8.1 javascript程式設計師了解actionscript的必要性 156
5.8.2 actionscript的數據類型 157
5.8.3 actionscript中的類庫、包和命名空間 159
5.8.4 整合來自actionscript的力量 160
5.8.5 合作:actionscript與javascript 162
第6章 ajax框架開發 163
6.1 ajax框架概述.. 164
6.2 air平台下的yahoo! ui 165
6.2.1 分級客戶端的支持 165
6.2.2 yui構成部分 166
6.2.3 以類為基礎的javascript 167
6.2.4 套用實例:email客戶端 168
6.3 air平台下的ext js 177
6.3.1 官方的air擴展 178
6.3.2 套用實例:個人記帳本 181
6.3.3 套用實例:simple task 195
6.4 air平台下的dojo 196
6.4.1 dair.air.*包 197
6.4.2 dojo與air如何兼容 202
6.4.3 套用實例:dojo上傳器 206
6.5 小結 211
第7章 處理javascript異常 213
7.1 調試概述 214
7.2 source viewer簡介 215
7.3 air introspector簡介 216
7.4 使用introspector進行調試 218
7.5 新加入的javascript錯誤信息 219
part 3 使用flex3開發air套用
第8章 ria開發利器 - adobe flex3 223
8.1 了解adobe flex3 224
8.2 了解adobe flex builder 3 226
8.3 flex builder對於air的支持情況 228
8.4 actionscript 3.0簡介 229
第9章 編寫第一個air套用 235
9.1 建立一個air項目 236
9.2 製作圖形界面 238
9.3 測試和發布 239
第10章 air組件介紹 241
10.1 關於flex air組件 242
10.2 使用windowedapplication組件 243
10.3 使用檔案系統組件 245
10.4 使用html組件 252
第11章 窗體和選單 255
11.1 air窗體基礎 256
11.2 創建窗體 261
11.3 控制窗體 269
11.4 監聽窗體事件 275
11.5 使用全螢幕窗體模式 276
11.6 螢幕 277
11.7 air選單簡介 280
11.8 創建本地選單 283
第12章 檔案和數據 285
12.1 air檔案系統概要 286
12.2 使用file對象 287
12.3 獲取檔案系統信息 289
12.4 目錄 290
12.5 檔案 292
12.6 加密的本地存儲 294
12.7 拖放(drag and drop) 295
12.8 複製與貼上 296
12.9 本地sql資料庫 298
第13章 網路和通訊 301
13.1 監測網路狀態 302
13.2 獲取網路數據 303
13.3 和javascript通訊 305
13.4 從網頁中調用air套用 306
13.5 air套用的相互調用 307
13.6 升級與更新 308
part 4 使用flash cs4開發air套用
第14章 flash cs4 air開發概述 317
14.1 關於flash cs4 318
14.2 flash cs4和flex3的對比 322
14.3 配置flash cs4的開發環境 323
14.4 flash cs4的項目結構 324
14.5 flash開發air的優勢 325
14.5.1 flash的優勢 325
14.5.2 製作不規則的界面 325
14.5.3 巧妙使用動畫 326
14.6 利用flash開發工具 327
14.6.1 使用第三方工具編寫as 327
14.6.2 swf加密 329
14.6.3 製作精緻的圖示 329
第15章 flash版的helloair 331
15.1 建立一個flash cs4 air文檔 332
15.2 建立文檔類 332
15.3 air套用配置 334
15.4 測試和打包 334
part 5 項目實踐
第16章 仿資源管理器(ajax+air) 339
16.1 了解wsn 340
16.1.1 wsn的特點 340
16.1.2 wsn與安全沙箱 341
16.2 wsn源碼探秘 342
16.2.1 wsn 342
16.2.2 wsn.filestore 345
16.2.3 wsn.tree 346
16.2.4 wsn.toolbar(1) 347
16.2.5 wsn.toolbar(2) 349
16.2.6 wsn.item 351
16.3 wsn小結 353
第17章 rss閱讀器(ajax+air) 355
17.1 了解rss訂閱器 356
17.2 fresh源碼探秘 357
17.2.1 初始化fresh 359
17.2.2 i18n多語言支持 361
17.2.3 初始化feed數據 363
17.2.4 外界接口 363
17.2.5 rss feed持久化 365
17.2.6 用戶界面與雜項 367
第18章 桌面飛蟲(flash+air) 371
18.1 項目背景 372
18.2 項目實踐 372
第19章 rss閱讀器flex版(flex+air) 375
19.1 項目背景 376
19.2 項目實踐 377
第20章 圖片瀏覽器(flex+air) 385
20.1 項目背景 386
20.2 項目實踐 387
第21章 文本編輯器(flex+air) 393
21.1 項目背景 394
21.2 項目實踐 394
第22章 網頁瀏覽器(flex+air) 399
22.1 項目背景 400
22.2 項目實踐 400
第23章 列車時刻表(flex+cairngorm+air) 403
23.1 項目背景 404
23.2 項目實踐 406
附錄 精彩示例網址 421
參考文獻... 425