iOS組件與框架——iOS SDK高級特性剖析 ( 簡體 字) |
作者:[美] Kyle Richter Joe Keeley | 類別:1. -> 程式設計 -> 手機程式 -> iPhone |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 40053 詢問書籍請說出此書號!【缺書】 NT售價: 445 元 |
出版日:9/1/2014 |
頁數:454 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115365538 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介: 《iOS組件與框架——iOS SDK高級特性剖析》講解了如何使用功能強大的iOS組件和框架來開發杰出的應用,使之具備優異的性能、可靠性、交互性,并對媒體提供支持。本書清晰地介紹了一些開發應用所用到的復雜中高級技術,并通過大量實例項目來演示將這些技術集成到iOS應用中的方法。 《iOS組件與框架——iOS SDK高級特性剖析》分為25章,其內容涵蓋了使用UIKit Dynamics提供基于物理現象的動畫效果;充分利用Core Location、MapKit和地理圍欄;利用排行榜和成就等Game Center功能;讓用戶能夠在應用中訪問地址簿和媒體庫;使用輕量級JSON在服務器、應用和網站之間傳輸數據;使用UIDocument和鍵/值存儲同步通過iCloud同步應用;使用鑰匙串保護數據;使用通知通告用戶與應用相關的重要事件;使用Core Data在本地存儲和檢索持久化數據;使用Objective-C高級特性編寫更簡潔、更易于管理的應用;使用GCD提供的并發功能提高應用的響應速度;使用TextKit進行發雜的文本處理和顯示;使用Xcode 5和Instruments卓有成效地調試應用;使用PassKit創建憑證等內容。 《iOS組件與框架——iOS SDK高級特性剖析》為想要開發高性能?iOS?應用的人員提供了實用的技巧、可重用的代碼以及專家級的建議。本書適合具有一定iOS開發經驗,要想進一步提升其開發技能的從業人員閱讀。 |
目錄:第1章 UIKit Dynamics 1 1.1 示例應用 1 1.2 UIKit Dynamics簡介 2 1.3 實現UIKit Dynamics 2 1.3.1 重力 3 1.3.2 碰撞 4 1.3.3 連接 6 1.3.4 彈簧效果 7 1.3.5 吸附 8 1.3.6 推力 8 1.3.7 物體屬性 10 1.4 深入了解UIDynamicAnimator和UIDynamicAnimatorDelegate 11 1.5 小結 12 1.6 練習 12
第2章 Core Location、MapKit和地理圍欄 13 2.1 示例應用 13 2.2 獲取用戶的位置 13 2.2.1 需求和許可 14 2.2.2 檢查定位服務是否已開啟 17 2.2.3 開始位置請求 17 2.2.4 分析和理解位置數據 19 2.2.5 重大變化通知 20 2.2.6 使用GPX文件進行位置測試 20 2.3 顯示地圖 22 2.3.1 理解坐標系 22 2.3.2 配置和定制MKMapKit 22 2.3.3 響應用戶交互 24 2.4 地圖注釋和覆蓋層 25 2.4.1 添加注釋 25 2.4.2 顯示標準和自定義的注釋視圖 27 2.4.3 可拖曳的注釋視圖 30 2.4.4 使用地圖覆蓋層 31 2.5 地理編碼和反向地理編碼 32 2.5.1 對地址進行地理編碼 32 2.5.2 對位置進行反向地理編碼 36 2.6 地理圍欄 38 2.6.1 檢查區域監視功能 38 2.6.2 定義邊界 39 2.6.3 監視變化 40 2.7 獲取線路 41 2.8 小結 46 2.9 練習 46
第3章 排行榜 47 3.1 “打仙人掌”游戲 47 3.1.1 生成仙人掌 49 3.1.2 處理玩家與仙人掌的交互 51 3.1.3 顯示生命數和得分 53 3.1.4 暫停和繼續 54 3.1.5 對游戲“打仙人掌”的最后思考 55 3.2 iTunes Connect 56 3.3 游戲中心管理器 58 3.4 身份驗證 60 3.4.1 常見的身份驗證錯誤 61 3.4.2 iOS 6身份驗證 63 3.5 提交得分 65 3.5.1 在游戲“打仙人掌”中添加得分功能 67 3.5.2 顯示排行榜 69 3.5.3 得分挑戰 71 3.5.4 更深入地了解排行榜 72 3.6 小結 74 3.7 練習 74
第4章 成就 75 4.1 iTunes Connect 75 4.2 顯示成就進度 77 4.3 游戲中心管理器和身份驗證 78 4.4 成就緩存 78 4.5 報告成就 80 4.6 添加成就鉤子 82 4.7 完成橫幅 83 4.8 成就挑戰 83 4.9 在游戲“打仙人掌”中添加成就功能 85 4.9.1 一步獲得的成就 86 4.9.2 可分多步獲得的成就 88 4.9.3 可分多次獲得的成就 89 4.9.4 捎帶式成就及存儲準確的成就進度 90 4.9.5 基于時間的成就 91 4.10 重置成就 92 4.11 更深入地了解成就 93 4.12 小結 94 4.13 練習 94
第5章 地址簿 97 5.1 為何支持地址簿很重要 97 5.2 地址簿編程的限制 97 5.3 示例應用簡介 98 5.4 使用地址簿 99 5.4.1 從地址簿讀取數據 100 5.4.2 從地址簿讀取多值數據 101 5.4.3 理解地址簿標簽 102 5.4.4 使用地址 103 5.5 地址簿圖形用戶界面 104 5.6 以編程方式創建聯系人 109 5.7 小結 111 5.8 練習 112
第6章 使用音樂庫 113 6.1 示例應用簡介 113 6.2 打造播放引擎 114 6.2.1 注冊播放通知 115 6.2.2 播放控制 116 6.2.3 響應狀態變化 118 6.2.4 時長和定時器 122 6.2.5 隨機播放和重復播放 123 6.3 媒體選擇器 123 6.4 以編程方式選擇媒體 125 6.4.1 隨機選擇歌曲 126 6.4.2 使用謂詞選擇歌曲 127 6.5 小結 129 6.6 練習 129
第7章 使用和分析JSON 131 7.1 JSON 131 7.1.1 使用JSON的好處 131 7.1.2 JSON資源 132 7.2 示例應用簡介 132 7.3 訪問服務器 132 7.4 從服務器獲取JSON 133 7.4.1 創建請求 133 7.4.2 查看響應 134 7.4.3 分析JSON 134 7.4.4 顯示數據 135 7.5 發布消息 137 7.5.1 JSON編碼 137 7.5.2 將JSON數據發送給服務器 139 7.6 小結 140 7.7 練習 140
第8章 iCloud 141 8.1 示例應用 141 8.2 配置應用以支持iCloud 142 8.2.1 設置賬戶 142 8.2.2 啟用iCloud功能 143 8.2.3 初始化iCloud 144 8.3 UIDocument簡介 144 8.3.1 創建UIDocument子類 145 8.3.2 與UIDocument交互 146 8.4 與iCloud交互 147 8.4.1 列出iCloud中的文檔 148 8.4.2 檢測iCloud沖突 151 8.5 解決沖突 152 8.6 鍵值存儲同步 156 8.7 小結 158 8.8 練習 158
第9章 通知 159 9.1 本地通知和推送通知的差別 159 9.2 示例應用 160 9.3 配置應用 160 9.4 創建開發推送SSL證書 163 9.5 開發供應配置文件 165 9.6 準備自定義聲音 169 9.7 注冊遠程通知 169 9.8 調度本地通知 170 9.9 接收通知 171 9.10 推送通知服務器 172 9.11 Rails基本配置 173 9.12 添加設備和呼叫支持 174 9.13 設備控制器 176 9.14 呼叫控制器 176 9.15 整合起來 177 9.16 發送推送通知 181 9.17 處理APNs反饋 181 9.18 小結 181 9.19 練習 181
第10章 使用Game Kit藍牙聯網技術 183 10.1 Game Kit藍牙聯網技術的局限性 183 10.2 Game Kit藍牙聯網技術的優點 183 10.3 示例應用 184 10.4 對等設備選擇器 188 10.5 發送數據 191 10.5.1 數據傳輸模式 191 10.5.2 在示例應用中發送數據 192 10.6 接收數據 193 10.7 狀態變化 194 10.8 高級功能 195 10.8.1 對等設備的顯示名稱 195 10.8.2 在不使用對等設備選擇器的情況下建立連接 195 10.8.3 會話模式 197 10.9 小結 197 10.10 練習 197
第11章 AirPrint 199 11.1 AirPrint打印機 199 11.2 檢查設備是否支持AirPrint 200 11.3 打印文本 201 11.3.1 打印信息 202 11.3.2 設置頁面范圍 202 11.3.3 錯誤處理 203 11.3.4 啟動打印作業 204 11.3.5 Print Simulator的反饋 205 11.4 打印中心 205 11.5 打印渲染的HTML 207 11.6 打印PDF 208 11.7 小結 209 11.8 練習 209
第12章 Core Data簡介 211 12.1 判斷是否適合使用Core Data 212 12.2 Core Data托管對象 212 12.2.1 托管對象 213 12.2.2 托管對象模型 213 12.2.3 托管對象模型遷移 215 12.2.4 創建托管對象 215 12.2.5 對象檢索和排序 216 12.2.6 檢索結果控制器 217 12.3 Core Data環境 217 12.3.1 持久存儲協調器 218 12.3.2 持久存儲區 218 12.3.3 托管對象上下文 218 12.4 小結 219
第13章 使用Core Data 221 13.1 示例應用 221 13.2 創建Core Data項目 222 13.3 創建托管對象模型 225 13.3.1 創建實體 226 13.3.2 添加特性 227 13.3.3 建立關系 227 13.3.4 NSManagedObject子類 228 13.4 添加默認數據 229 13.4.1 插入托管對象 229 13.4.2 其他默認數據添加技術 230 13.5 顯示托管對象 230 13.5.1 創建檢索請求 231 13.5.2 使用對象ID檢索 232 13.5.3 顯示對象數據 234 13.5.4 使用謂詞 235 13.6 檢索結果控制器簡介 237 13.6.1 準備檢索結果控制器 237 13.6.2 集成表視圖和檢索結果控制器 239 13.6.3 響應Core Data變化 241 13.7 添加、編輯和刪除托管對象 243 13.7.1 插入托管對象 243 13.7.2 刪除托管對象 244 13.7.3 編輯托管對象 245 13.7.4 保存和回滾所做的修改 245 13.8 小結 246 13.9 練習 247
第14章 語言特性 249 14.1 字面量 249 14.1.1 NSNumber 250 14.1.2 NSArray 250 14.1.3 NSDictionary 251 14.1.4 盒裝表達式(Boxed Expressions) 252 14.2 自動引用計數 252 14.2.1 在新項目中使用ARC 252 14.2.2 將既有項目遷移到ARC 253 14.2.3 ARC的基本用法 255 14.2.4 ARC限定符 256 14.3 塊 256 14.3.1 聲明和使用塊 257 14.3.2 使用塊捕獲狀態 257 14.3.3 將塊用作方法參數 259 14.3.4 內存、線程和塊 260 14.4 屬性 261 14.4.1 聲明屬性 261 14.4.2 合成屬性 262 14.4.3 訪問屬性 263 14.4.4 句點表示法 263 14.4.5 快速枚舉 264 14.5 方法替換 265 14.6 小結 267 14.7 練習 267
第15章 使用Social Framework集成Twitter和Facebook 269 15.1 集成社交功能 269 15.2 示例應用 269 15.3 登錄 270 15.4 使用SLComposeViewController 271 15.5 使用自定義界面發布消息 273 15.5.1 發布推文 273 15.5.2 發布Facebook消息 277 15.5.3 創建Facebook應用 277 15.6 訪問用戶的時光軸 281 15.6.1 Twitter 282 15.6.2 Facebook 287 15.7 小結 290 15.8 練習 291
第16章 執行后臺任務 293 16.1 示例應用 293 16.2 檢查設備是否支持后臺處理 294 16.3 在后臺完成任務 295 16.3.1 后臺任務標識符 296 16.3.2 終止處理程序 296 16.3.3 執行后臺任務 297 16.4 實現后臺活動 298 16.4.1 后臺活動類型 298 16.4.2 在后臺播放音樂 299 16.5 小結 302 16.6 練習 302
第17章 使用GCD改善性能 303 17.1 示例應用 303 17.2 隊列簡介 304 17.3 在主線程中運行 304 17.4 在后臺運行 306 17.5 在操作隊列中運行 308 17.5.1 并行操作 308 17.5.2 串行操作 309 17.5.3 撤銷操作 311 17.5.4 自定義操作 311 17.6 在分派隊列中運行 313 17.6.1 并行分派隊列 314 17.6.2 串行分派隊列 315 17.7 小結 316 17.8 練習 317
第18章 使用鑰匙串保護數據 319 18.1 示例應用簡介 319 18.2 使用Keychain 320 18.2.1 創建KeychainItemWrapper實例 320 18.2.2 存儲和獲取PIN 321 18.2.3 鑰匙串項屬性鍵 322 18.2.4 保護字典 323 18.2.5 重置鑰匙串項 325 18.2.6 在應用之間共享鑰匙串項 325 18.2.7 Keychain錯誤碼 326 18.3 小結 327 18.4 練習 327
第19章 使用圖像和濾鏡 329 19.1 示例應用 329 19.2 基本的圖像數據和顯示 329 19.2.1 實例化圖像 329 19.2.2 顯示圖像 331 19.2.3 使用圖像選擇器 332 19.2.4 調整圖像大小 334 19.3 Core Image濾鏡 335 19.3.1 濾鏡類別和濾鏡 335 19.3.2 濾鏡的屬性 337 19.3.3 初始化圖像 340 19.3.4 渲染應用濾鏡后的圖像 340 19.3.5 串接濾鏡 341 19.4 人臉檢測 342 19.4.1 創建人臉檢測器 342 19.4.2 處理五官 343 19.5 小結 345 19.6 練習 345
第20章 集合視圖 347 20.1 示例應用 347 20.2 集合視圖簡介 348 20.2.1 創建集合視圖 348 20.2.2 實現集合視圖數據源方法 350 20.2.3 實現集合視圖委托方法 352 20.3 定制集合視圖和流式布局 354 20.3.1 基本定制 354 20.3.2 裝飾視圖 355 20.4 創建自定義布局 359 20.5 集合視圖動畫 362 20.5.1 集合視圖布局變更動畫 362 20.5.2 集合視圖滾動動畫 364 20.5.3 集合視圖內容變更動畫 365 20.6 小結 366 20.7 練習 366
第21章 TextKit簡介 367 21.1 示例應用 367 21.2 NSLayoutManager簡介 368 21.2.1 NSTextStore 368 21.2.2 NSLayoutManagerDelegate 369 21.2.3 NSTextContainer 370 21.3 動態地檢測鏈接 370 21.4 觸摸檢測 371 21.5 排除路徑 372 21.6 突出特定內容 373 21.7 使用動態字體修改字體設置 378 21.8 小結 379 21.9 練習 379
第22章 手勢識別器 381 22.1 手勢識別器類型 381 22.2 手勢識別器的基本用法 382 22.3 示例應用簡介 382 22.3.1 使用輕按識別器 383 22.3.2 使用張合識別器 384 22.4 一個視圖,多個識別器 385 22.4.1 手勢識別器的幕后原理 387 22.4.2 一個視圖多個識別器 388 22.4.3 要求手勢識別器失敗 389 22.5 自定義UIGestureRecognizer子類 391 22.6 小結 392 22.7 練習 392
第23章 訪問照片庫 393 23.1 示例應用 393 23.2 資產庫 393 23.3 枚舉資產編組和資產 394 23.3.1 許可 394 23.3.2 編組 396 23.3.3 資產 400 23.4 顯示資產 402 23.5 保存到相機膠卷 407 23.6 處理照片流 408 23.7 小結 409 23.8 練習 410
第24章 Passbook和PassKit 411 24.1 示例應用 411 24.2 設計憑證 412 24.2.1 憑證類型 412 24.2.2 憑證布局之登機牌 413 24.2.3 憑證布局之優惠券 413 24.2.4 憑證布局之入場券 413 24.2.5 憑證布局之通用憑證 414 24.2.6 憑證布局之購物卡 414 24.2.7 憑證的呈現 415 24.3 創建憑證 416 24.3.1 憑證的基本標識 417 24.3.2 憑證的相關信息 417 24.3.3 條形碼標識 418 24.3.4 憑證的外觀信息 418 24.3.5 憑證字段 419 24.4 憑證的簽名和打包 421 24.4.1 創建憑證類型ID 421 24.4.2 創建憑證簽名證書 423 24.4.3 創建清單文件 426 24.4.4 對憑證進行簽名和打包 427 24.4.5 測試憑證 428 24.4.6 在應用中與憑證交互 428 24.5 自動更新憑證 436 24.6 小結 437 24.7 練習 437
第25章 調試和Instruments 439 25.1 調試簡介 439 25.1.1 第一個計算機Bug 439 25.1.2 Xcode調試基礎 440 25.2 斷點 442 25.2.1 定制斷點 442 25.2.2 符號斷點和異常斷點 443 25.2.3 斷點的范圍 444 25.3 使用調試器 444 25.4 Instruments 446 25.4.1 Instruments的界面 447 25.4.2 探索Instruments:Time Profiler 448 25.4.3 探索Instruments:Leaks 451 25.4.4 更深入地了解Instruments 453 25.5 小結 453 25.6 練習 454 |
序: |