C#開發Android套用實戰

C#開發Android套用實戰

《 C#開發Android套用實戰》是2013年1月出版的圖書。

基本介紹

  • 作者:(美) 麥克盧爾(McClure, W. B. ) 等著
  • ISBN:9787302304999
  • 頁數:378
  • 定價:59.80元
  • 出版時間:2013-1
內容簡介,作品目錄,作者簡介,

內容簡介

《C#開發Android套用實戰——使用Mono for Android和.NET/C# 全面透徹地講解Android套用編程知識,分析如何結合使用C#和Mono來編寫在Android設備系列上運行的應用程式。在這本由多位專家聯袂撰寫的必備精品書籍的指引下,您不必學習其他程式語言,就可以成為一名成功的Android應用程式開發人員。您將深入理解螢幕控制項、UI開發、表、布局和MonoDevelop等知識點,並駕輕就熟地使用Mono for Android來規劃、構建和開發Android應用程式。
主要內容
◆ 介紹如何使用您已經掌握的C# 和.NET技術來構建Android app
◆ 詳述使用數據以及將數據綁定到控制項的最佳方法
◆ 解釋如何針對Android設備硬體編寫程式
◆ 深入分析檔案系統和應用程式首選項
◆ 討論如何在Mono for Android、MonoTouch和WindowsPhone 7之間共享代碼
◆ 列出通過國際化和本地化支持功能來實現應用程式全球化的技巧
◆ 介紹如何使用Android 4開發平板套用

作品目錄

目 錄
第1章 Android、移動設備和
Marketplace簡介 1
1.1 產品比較 1
1.1.1 .NET Framework 2
1.1.2 Mono 3
1.1.3 Mono for Android 4
1.1.4 開發工具 6
1.2 移動開發 6
1.2.1 解決支持問題 7
1.2.2 設計問題 7
1.3 Android 8
1.3.1 Android發展簡史 8
1.3.2 為Android編寫基於Web的
應用程式 9
1.3.3 為Android編寫本機
應用程式 9
1.3.4 Android開發問題 9
1.3.5 Android SDK工具 11
1.3.6 Android開發成本 11
1.4 跨平台替代方案 12
1.4.1 其他跨平台工具 12
1.4.2 選擇跨平台工具時的
注意事項 12
1.5 小結 15
第2章 Mono for Android簡介 17
2.1 開始開發前的準備工作 17
2.1.1 Mono的含義 17
2.1.2 Mono for Android的含義 18
2.1.3 使用Mono for Android的
原因 18
2.1.4 在使用Mono for Android
時需要權衡的事項 20
2.1.5 Mono for Android開發
環境需要的其他工具 21
2.2 利用Mono for Android進行
Visual Studio開發 24
2.2.1 一般設定 24
2.2.2 生成Hello Android 25
2.2.3 日誌記錄 28
2.2.4 調試 29
2.2.5 測試 29
2.2.6 部署 30
2.3 使用MonoDevelop進行Mono
for Android開發 30
2.3.1 一般設定 30
2.3.2 構建Hello Android 31
2.3.3 日誌記錄 32
2.3.4 調試 33
2.3.5 測試 33
2.3.6 部署 33
2.4 小結 34
第3章 了解Android/Mono for Android
應用程式 35
3.1 Android應用程式的含義 36
3.1.1 Android應用程式的
構建基塊 37
3.1.2 組件之間的通信:Android
意圖 46
3.2 綁定組件:Android清單 48
3.2.1 Android清單的基礎知識 48
3.2.2 通過Visual Studio為Mono for
Android編輯清單 51
3.3 小結 53
第4章 規劃和構建應用程式
用戶界面 55
4.1 成功構建移動UI的
指導原則 55
4.2 構建Android UI 56
4.2.1 視圖 56
4.2.2 設計表面 57
4.3 選擇控制項布局 57
4.3.1 AbsoluteLayout 58
4.3.2 FrameLayout 59
4.3.3 LinearLayout 59
4.3.4 RelativeLayout 61
4.3.5 TableLayout 62
4.3.6 最佳化布局 64
4.4 設計自己的用戶界面控制項 64
4.4.1 TextView 66
4.4.2 EditText 66
4.4.3 AutoCompleteTextView 66
4.4.4 Spinner 67
4.4.5 Button 69
4.4.6 CheckBox 69
4.4.7 RadioButton和組 69
4.4.8 Clock 72
4.4.9 Picker 72
4.4.10 Image 75
4.4.11 虛擬鍵盤 80
4.5 控制選單 82
4.5.1 選單系統介紹 83
4.5.2 選單 83
4.5.3 子選單 85
4.5.4 上下文選單 86
4.5.5 將選單定義為資源 87
4.6 獨立於解析度的UI 90
4.6.1 支持各種螢幕資源 90
4.6.2 使用Android Market支持 92
4.6.3 多個螢幕解析度的
最佳做法 92
4.7 構建用戶界面:手機和
平板電腦示例 93
4.8 小結 98
第5章 使用數據 99
5.1 使用SQLite 99
5.1.1 建立資料庫 100
5.1.2 建立表 101
5.1.3 使用SQL語句 102
5.2 升級策略 104
5.2.1 就地升級 104
5.2.2 複製數據 105
5.3 特定於Android的
資料庫選項 105
5.4 使用遠程數據 107
5.4.1 訪問企業服務 108
5.4.2 使用SOAP 109
5.4.3 使用基於REST的Web
服務 113
5.4.4 使用JSON 114
5.4.5 利用POST傳送數據 118
5.5 使用LINQ和XML檢索
數據 119
5.6 以負責任的態度使用Web
服務 121
5.7 使用遠程SQL Server資料庫 122
5.8 小結 124
第6章 將數據綁定到控制項 125
6.1 Mono for Android中的
數據綁定 126
6.1.1 數據適配器的含義 126
6.1.2 適配器視圖的含義 127
6.1.3 這三項彼此之間的
關聯方式 127
6.1.4 使用適配器視圖和大型
數據集 128
6.1.5 進一步探究適配器 130
6.1.6 使用本機適配器 130
6.1.7 進一步探究適配器視圖 131
6.1.8 使用本機適配器視圖 132
6.2 使用游標 132
6.2.1 使用游標填充Spinner 132
6.2.2 使用帶有Gallery的游標 140
6.3 使用列表 147
6.3.1 在列表中顯示簡單數據 148
6.3.2 使用Android的
ListAdapter 150
6.3.3 使用自定義列表適配器來
自定義ListView 152
6.3.4 處理ListView事件 158
6.3.5 首選項螢幕 160
6.3.6 嵌套導航 163
6.3.7 分組列表 165
6.3.8 在格線中顯示數據 169
6.4 小結 174
第7章 使用檔案系統和應用程式
首選項 175
7.1 使用檔案系統 175
7.1.1 檔案系統類型和結構 176
7.1.2 QuickEdit示例程式:
使用檔案存儲的例子 180
7.2 使用應用程式首選項 186
7.2.1 應用程式首選項類型 186
7.2.2 創建自己的應用程式
首選項 187
7.2.3 首選項程式 188
7.2.4 偵聽首選項的更改 194
7.2.5 處理XML 195
7.3 小結 196
第8章 針對設備硬體編程 197
8.1 使用感測器 197
8.1.1 引用感測器管理器 198
8.1.2 感測器支持 198
8.1.3 訪問感測器 198
8.1.4 使用感測器 199
8.1.5 了解感測器類型值 200
8.2 對加速度的回響 202
8.2.1 使用XYZ坐標系 202
8.2.2 對加速計進行編碼 203
8.3 構建電子羅盤 203
8.4 振動 208
8.5 網路連線 209
8.5.1 ConnectivityManager 209
8.5.2 檢查用戶通信首選項 209
8.5.3 檢查BackgroundDataSetting
的更改 210
8.5.4 檢查當前網路配置 211
8.5.5 創建網路連線通知 211
8.5.6 WifiManager 211
8.6 Bluetooth管理器 216
8.7 在應用程式中啟用
語音識別功能 218
8.8 獲取建議路線規劃指示 219
8.9 小結 225
第9章 使用多媒體——音頻、
視頻和照相機 227
9.1 Android媒體類 227
9.2 播放音頻和視頻 229
9.2.1 媒體播放器支持的格式 229
9.2.2 音頻播放編程 230
9.2.3 視頻播放編程 233
9.2.4 控制播放 237
9.2.5 管理播放輸出 237
9.3 錄製音頻和視頻 237
9.3.1 使用意圖來錄製視頻 238
9.3.2 使用媒體記錄器 241
9.4 圖像和使用照相機 244
9.4.1 使用意圖拍照 244
9.4.2 控制照相機 247
9.4.3 管理照相機設定和
圖片選項 247
9.5 向媒體存儲器添加新媒體 253
9.5.1 使用媒體掃描程式 254
9.5.2 向存儲器添加新媒體 255
9.6 語音識別 255
9.7 小結 257
第10章 與其他應用程式和庫通信 259
10.1 Android應用程式集成 259
10.1.1 打開瀏覽器 259
10.1.2 打開電子郵件 262
10.1.3 打電話 263
10.1.4 傳送Text/SMS訊息 264
10.1.5 在Maps應用程式中
打開位置 266
10.1.6 打開YouTube視頻 267
10.1.7 開放市場 267
10.2 應用程式集成 268
10.2.1 與HootSuite以及其他
Twitter應用程式的簡單
集成 268
10.2.2 配置意圖過濾器 269
10.2.3 處理傳入的意圖請求 270
10.3 與聯繫人進行集成 270
10.3.1 顯示聯繫人詳細信息 273
10.3.2 選擇聯繫人 274
10.3.3 創建新聯繫人 275
10.3.4 創建新聯繫人或者添加到
現有的聯繫人 276
10.4 小結 277
第11章 開發後台服務和異步代碼 279
11.1 服務生命周期 280
11.1.1 創建第一個服務 280
11.1.2 服務的優先權排序 283
11.2 使用執行緒進行異步處理 284
11.2.1 手動執行緒 284
11.2.2 利用System.Threading.
Tasks 286
11.2.3 帶有IntentService的隱式
執行緒 288
11.3 與UI進行通信 289
11.3.1 使用Binder和服務
連線方法 289
11.3.2 使用廣播接收器方法 292
11.3.3 使用靜態事件方法 295
11.4 通知用戶 298
11.4.1 通過警報和IntentService
來調度意圖 300
11.4.2 使用C2DM來推送訊息 301
11.5 小結 310
第12章 畫布和繪製資源類型:構建
自定義Android圖形 311
12.1 在Mono for Android中
使用圖形 312
12.2 使用Canvas對象 313
12.2.1 圖形基元 314
12.2.2 Canvas對象 315
12.2.3 Paint對象 316
12.2.4 Bitmap對象 317
12.2.5 組合在一起 317
12.2.6 選擇最佳方法 337
12.3 2D圖形庫 338
12.4 使用繪製資源類型 339
12.4.1 作為XML資源的繪製
資源類型 339
12.4.2 簡單和複合的繪製
資源類型 340
12.4.3 繪製資源類型的
實際套用 340
12.5 小結 354
第13章 使用位置信息 357
13.1 理解位置的基本知識 358
13.1.1 確定位置 358
13.1.2 基於位置的數據中斷 359
13.1.3 使用基於位置的服務 359
13.1.4 在模擬器上配置基於
位置的應用程式 359
13.2 選擇一個位置提供程式 361
13.2.1 確定哪些提供程式可供
使用 361
13.2.2 根據標準查找位置
提供程式 361
13.3 地理編碼 363
13.3.1 前向地理編碼 363
13.3.2 反向地圖編碼 365
13.4 構建接近警報 366
13.5 使用Google Maps 368
13.5.1 獲取開發/調試MD5
指紋 369
13.5.2 獲取生產/發布MD5
指紋 369
13.5.3 創建基於地圖的活動 369
13.5.4 在布局檔案中創建地圖 371
13.5.5 使用覆蓋的MapView
控制器 372
13.6 小結 374
第14章 國際化和本地化 375
14.1 選擇本地化策略 376
14.2 更新語言和區域設定 378
14.3 了解Android本地化機制 379
14.3.1 設定默認資源 380
14.3.2 添加本地化支持 380
14.3.3 選擇資源的詳細過程 381
14.4 支持多語言 382
14.4.1 利用Strings.xml檔案 382
14.4.2 翻譯文本 383
14.4.3 翻譯控制項文本 386
14.5 本地化其他資源 387
14.6 Strings.xml的高級用法 391
14.6.1 字元串數組 391
14.6.2 複數 391
14.6.3 字元串替換 392
14.7 使用格式轉換 394
14.7.1 格式化日期 395
14.7.2 格式化數字和貨幣 395
14.8 小結 396
第15章 在Mono for Android、
MonoTouch和Windows
Phone7之間共享代碼 397
15.1 三大平台概述 397
15.1.1 Mono for Android 397
15.1.2 MonoTouch 398
15.1.3 Windows Phone 7 399
15.2 使用類庫來分離代碼 400
15.2.1 使用預處理器指令 400
15.2.2 Mono for Android 401
15.2.3 Windows Phone 7 402
15.2.4 MonoTouch 402
15.3 每種平台上可用的程式集 402
15.4 一個通用的類庫 405
15.4.1 Mono for Android 407
15.4.2 MonoTouch 408
15.4.3 Windows Phone 7 409
15.5 匯總:創建一個跨平台
應用程式 410
15.6 小結 422
第16章 準備並向Market
發布應用程式 423
16.1 準備應用程式 424
16.1.1 測試應用程式 424
16.1.2 找到關鍵的測試區域 425
16.1.3 用於測試的工具 426
16.1.4 與同事和用戶一起
進行測試 433
16.2 向Android Market發布
應用程式 434
16.2.1 對應用程式進行
版本控制 434
16.2.2 創建最終版本 435
16.2.3 為應用程式簽名 437
16.2.4 上傳到Android Market 441
16.3 小結 442
第17章 Android平板電腦 445
17.1 分析Android平板
電腦市場 445
17.2 設計平板電腦UI 446
17.3 使用操作欄 447
17.3.1 刪除操作欄 448
17.3.2 向操作欄添加項目 449
17.3.3 使用應用程式圖示 452
17.3.4 向堆疊上方導航 453
17.3.5 添加並使用操作項 453
17.3.6 創建選項卡式界面 454
17.4 使用片段控制部分螢幕 455
17.4.1 創建片段 457
17.4.2 更多片段 461
17.5 小結 469
附錄A 針對開發人員的一些提示
以及Mono for Android的
未來前景 471

作者簡介

Wallace B. McClure是微軟MVP、ASP Insider、INETASpeaker's Bureau會員,他的部落格和播客廣受歡迎。
Nathan Blevins是一名ASPInsider、公眾演講者,現任Bush Brothers公司業務分析師,他的部落格是http://nathanblevins.com。
John J. Croft IV是一名作家、開發人員,現任亞特蘭大Turner Broadcasting System公司的高級技術經理。
Jonathan Dick是一名移動套用開發人員,他參與和維護著多個移動開源項目,他的部落格是http://redth.info。
Chris Hardy是微軟ASPInsider,是一名專門從事Mono-Touch和Mono for Android開發的.NET顧問。

相關詞條

熱門詞條

聯絡我們