譯者序
序
前言
第一部分 基礎知識
第1章 概述1
1.1 無線時代的到來1
1.2 MIDP-移動Java技術的靈魂1
1.3 第一個集合:JTWI2
1.4 更大的集合:MSA2
1.5 了解MSA API3
1.5.1 基礎MIDP平臺3
1.5.2 高級網絡4
1.5.3 多媒體4
1.5.4 高級圖形4
1.5.5 安全與交易4
1.5.6 定位5
1.5.7 高級應用程序5
1.5.8 高級應用服務5
1.6 看看MSA 1.0之外的世界5
1.7 關于JavaFX Mobile6
1.8 小結6
第2章 工具7
2.1 用于CLDC的Sun Java無線工具包:一個烤面包機7
2.2 NetBeans Mobility Pack:一個美食廚房8
2.3 Eclipse9
2.4 剖析MIDlet套件9
2.5 創(chuàng)建一個MIDlet套件10
2.6 命令行10
2.7 預處理11
2.8 混淆器11
2.9 模擬器11
2.10 設備測試12
2.11 小結12
第3章 快速入門13
3.1 做一個能運行的東西13
3.2 在屏幕上顯示一些東西14
3.3 讓用戶參與進來15
3.4 在線獲取源代碼16
3.5 小結16
第4章 核心API17
4.1 可能被忽略的Java虛擬機(JVM)的特性17
4.2 字符串、基本數(shù)據(jù)類型和系統(tǒng)方法18
4.3 線程18
4.4 使用流來完成輸入/輸出19
4.4.1 保持清晰19
4.4.2 完整地讀取輸入數(shù)據(jù)20
4.5 日期類、集合類和隨機數(shù)類20
4.6 小結21
第二部分 MIDlet
第5章 MIDlet特性23
5.1 MIDlet生命周期23
5.1.1 AMS-MIDlet的操作者23
5.1.2 關于布爾類型的形象unconditional24
5.1.3 MIDlet套件可以控制自己的命運25
5.2 使用瀏覽器和打電話25
5.3 應用程序性質25
5.4 保護域和有數(shù)字簽名的MIDlet套件26
5.5 許可27
5.6 MIDlet套件標記的底線28
5.7 小結28
第6章 自動運行MIDlet套件29
6.1 響應網絡連接29
6.1.1 動態(tài)注冊29
6.1.2 靜態(tài)注冊30
6.1.3 查找到達的連接30
6.1.4 一個Push注冊的例子30
6.2 在指定時間運行MIDlet套件35
6.3 對內容作出響應37
6.3.1 激活一個內容句柄37
6.3.2 編寫內容句柄MIDlet套件39
6.3.3 把它們放到一起44
6.3.4 注冊靜態(tài)內容句柄45
6.4 小結45
第三部分 用戶界面
第7章 基本用戶界面47
7.1 如何顯示屏幕47
7.2 文本框-草叢里的矮子48
7.3 輸入模式49
7.4 使用警告提示49
7.5 圖片一覽50
7.6 把它們放到一起50
7.7 滾動條的好處52
7.8 命令52
7.9 命令布置53
7.10 小結54
第8章 更多用戶界面55
8.1 List55
8.2 列表選項56
8.3 處理列表事件56
8.4 例子中的3個列表57
8.5 高級列表控制59
8.6 使用Form59
8.7 使用項目60
8.8 進度條61
8.9 控制項目布局63
8.10 請對Form負責63
8.11 項目改變事件和項目命令66
8.12 小結68
第四部分 圖形
第9章 創(chuàng)建自定義界面69
9.1 從顯示中獲取信息69
9.2 繪圖如何工作70
9.3 設置顏色70
9.4 畫線和圖形72
9.5 畫出文本76
9.6 測量文本77
9.7 創(chuàng)建圖片80
9.8 畫圖片81
9.9 保持資源盡量小84
9.10 在圖片上畫畫84
9.11 處理像素86
9.12 剪輯88
9.13 事件句柄89
9.14 控制命令按鈕布局91
9.15 小結93
第10章 自定義項目94
10.1 自定義項目尺寸94
10.2 繪圖94
10.3 一個非常好的等待指示器94
10.4 在自定義項目中處理事件97
10.5 內部遍歷98
10.6 一個交互的例子99
10.7 小結103
第11章 使用游戲API104
11.1 GameCanvas的循環(huán)104
11.2 使用層來構建屏幕109
11.3 貼圖層109
11.4 Sprite111
11.5 碰撞檢測112
11.6 組建屏幕場景112
11.7 一個短小示例113
11.8 小結117
第12章 尺寸可變的向量圖片118
12.1 顯示SVG內容的簡單途徑118
12.2 運行動畫文件121
12.3 剖析一個SVG文件123
12.4 在你的Canvas上顯示一個SVG文件126
12.5 創(chuàng)建新的SVG元素127
12.6 SVG事件處理131
12.7 小結135
第13章 3D圖形136
13.1 創(chuàng)建M3G文件136
13.2 顯示3D內容的簡易方法136
13.3 復雜方法創(chuàng)建3D文件140
13.4 小結148
第五部分 存儲和資源
第14章 記錄內存149
14.1 一個微型數(shù)據(jù)庫149
14.2 操作記錄存儲150
14.3 操作記錄151
14.4 請求151
14.5 通過記錄迭代152
14.6 保存記錄的場所152
14.7 小結156
第15章 讀寫文件157
15.1 快速開始157
15.2 使用文件和目錄158
15.3 總有一席之地159
15.4 查找圖片、音樂和其他東西159
15.5 根目錄操作160
15.6 詢問許可160
15.7 一個例子160
15.8 小結164
第16章 通訊錄和日歷165
16.1 理解PIM API165
16.2 操作列表166
16.2.1 項目查詢166
16.2.2 字符串數(shù)組字段167
16.2.3 標簽167
16.2.4 類別168
16.2.5 聯(lián)系人列表的特殊方法168
16.2.6 日歷和約會的特殊方法168
16.2.7 要事列表的特殊方法169
16.3 列表從哪里來169
16.4 輸入和輸出169
16.5 支持什么170
16.6 不要忘記許可170
16.7 示例171
16.8 小結180
第17章 移動國際化181
17.1 關于本地化181
17.2 使用資源181
17.3 查找資源182
17.4 資源層次183
17.5 格式化數(shù)字和日期184
17.6 字符串排序185
17.7 讓它工作起來185
17.8 小結190
第六部分 聯(lián)網
第18章 通用連接框架191
18.1 建立連接191
18.2 關閉連接192
18.3 使用線程193
18.4 通過HTTP實現(xiàn)圖片上傳193
18.5 高級HTTP技術195
18.6 成功技巧196
18.7 使用HTTPS196
18.8 其他連接類型199
18.9 連接請求202
18.10 連接許可202
18.11 小結203
第19章 文本和多媒體短信204
19.1 為什么204
19.2 發(fā)送信息204
19.3 發(fā)送二進制信息205
19.4 發(fā)送多媒體信息206
19.5 接收信息207
19.6 一個簡單的短信應用程序208
19.7 小結212
第20章 藍牙和OBEX213
20.1 控制藍牙213
20.2 查找其他藍牙設備和服務213
20.3 簡單方法214
20.4 建立一個客戶端連接214
20.5 建立一個服務器214
20.6 鑒定和封裝216
20.7 關于OBEX216
20.8 不要忘記Push注冊218
20.9 藍牙和OBEX許可218
20.10 BlueChew應用程序218
20.11 小結229
第21章 XML和Web服務230
21.1 解析XML230
21.2 創(chuàng)建一個句柄231
21.3 解析RSS232
21.4 不用JSR 172解析XML236
21.5 使用WS-* Web服務236
21.6 讓世界產生動力240
21.7 Flickr移動客戶端241
21.8 小結250
第22章 會話發(fā)起協(xié)議251
22.1 理解SIP251
22.2 開發(fā)工具252
22.3 建立一個通知252
22.4 發(fā)送請求252
22.5 接收SIP請求并發(fā)送響應253
22.6 GoSIP和SIPDemo253
22.7 小結254
第七部分 多 媒 體
第23章 錄放音頻和視頻255
23.1 煩人的背景知識255
23.2 音調256
23.3 使用播放器256
23.4 支持的內容類型258
23.5 線程與監(jiān)聽258
23.6 進行控制258
23.7 播放示例音頻內容259
23.8 播放視頻內容259
23.9 序列音播放器261
23.10 交互式MIDI播放器261
23.11 錄音262
23.12 捕捉視頻263
23.13 不可能使所有人都滿意263
23.14 關于MMMIDlet264
23.15 小結264
第24章 多媒體高級特性265
24.1 圖像處理265
24.2 控制圖像格式267
24.3 音樂267
24.4 3D音頻268
24.5 音頻的特殊效果269
24.6 更多的攝像頭控制269
24.7 普通的舊收音機270
24.8 小結270
第八部分 安全與交易
第25章 智能卡與加密技術271
25.1 關于智能卡271
25.2 用模擬器測試SATSA應用程序272
25.3 基本智能卡通信272
25.4 智能卡與Java卡RMI通信272
25.5 創(chuàng)建簽名273
25.6 管理證書273
25.7 加密274
25.7.1 使用信息摘要274
25.7.2 使用數(shù)字簽名274
25.7.3 使用密碼275
25.8 小結275
第26章 手機支付276
26.1 讓我看到收入276
26.2 匹配應用程序和支付方式278
26.3 編輯支付款項信息279
26.4 安全與支付280
26.5 小結280
第27章 知道你置身何處281
27.1 短故事281
27.2 一個更短的故事282
27.3 更新接收周期的定位信息282
27.4 關閉282
27.5 路標數(shù)據(jù)庫283
27.6 方向283
27.7 設備定位283
27.8 小結285
第28章 應用程序架構286
28.1 借助Java ME的力量286
28.2 借助網絡的力量286
28.3 不要把桌面程序壓縮到Java ME應用程序中286
28.4 為多種設備開發(fā)287
28.5 可拉伸的屏幕287
28.6 讓它正常工作288
28.7 小結288