精通Ios框架-(第2版) 版權信息
- ISBN:9787302433811
- 條形碼:9787302433811 ; 978-7-302-43381-1
- 裝幀:暫無
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
精通Ios框架-(第2版) 本書特色
蘋果的ios sdk提供了非常強大的框架集合,即使到現在為止,找到這些框架的詳細介紹和使用方法都
有一定困難。不過,借助本書的實用見解和經過驗證的代碼,你可以使用蘋果公司提供的這些框架來創建更有創意、更實用的應用,同時也會讓編寫代碼的過程更加快速、讓代碼更加可靠,也讓應用更加成功、更有市場。
kyle richter和joe keeley關注專業開發者每天都會用到的一些中高級技術,涉及的技術范圍從支持社交網絡到安全保障,從core data到icloud,甚至有關apple watch的內容都包含在內。
作為一本便捷的模塊化參考書,幾乎每一章都會包含一個完整的objective-c示例程序。另有一個跨章節的game center案例,也正好演示了多個ios功能是如何進行組合的。
主要內容:
■ 添加類似物理效果的動畫和動作到uiview視圖
■ 使用core location確定設備的位置,顯示自定義地圖并實現地理圍欄
■ 在游戲和其他應用中加入帶有社交元素的排行榜功能
■ 訪問音樂和圖片集
■ 使用healthkit實現帶有健康和健身功能的應用
■ 通過homekit實現家居智能化
■ 使用json在平臺間傳輸數據
■ 設置本地和遠程通知
■ 使用cloudkit實現數據的遠程存儲和同步
■ 實現訪問應用的extension功能
■ 輕松添加airprint功能
■ 在ios 8和yosemite設備之間提供連續的handoff功能
■ 學習有效使用core data
■ 通過社交框架在應用中整合twitter和facebook
■ 使用grand central dispatch機制處理多線程任務
■ 使用keychain和touch id保護用戶數據
■ 定制集合視圖
■ 掌握大部分的手勢識別方法
■ 創建和發送“通行證”到passbook
■ 調試工具的介紹及應用的優化
精通Ios框架-(第2版) 內容簡介
暢銷書作者kyle
richter全新作品
每一章包含一個完整的objective-c示例程序
另有一個跨章節的game center案例
演示了如何進行組合多個ios功能
精通Ios框架-(第2版) 目錄
目 錄 第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 第2章 core location、mapkit和geofencing框架 13 2.1 示例程序 13 2.2 獲取用戶位置 13 2.2.1 請求和允許 14 2.2.2 檢查服務 16 2.2.3 開始位置請求 17 2.2.4 解析和理解位置數據 19 2.2.5 重大變更通知 20 2.2.6 使用gpx文件測試指定位置 20 2.3 顯示地圖 21 2.3.1 了解坐標系 21 2.3.2 mkmapkit配置和自定義 22 2.3.3 對用戶操作的響應 23 2.4 地圖標注和覆蓋物 24 2.4.1 添加標注 24 2.4.2 顯示標準和自定義的標注視圖 26 2.4.3 可拖曳的標注視圖 29 2.4.4 使用地圖覆蓋物 30 2.5 地理編碼和反向地理編碼 31 2.5.1 對地址進行地理編碼 31 2.5.2 對位置進行反向地理編碼 35 2.6 地理圍欄 38 2.6.1 判斷區域監控是否可用 38 2.6.2 定義邊界 38 2.6.3 監控變更 39 2.7 獲取路徑 41 2.8 小結 45 第3章 排行榜 47 3.1 示例程序 47 3.1.1 彈出仙人掌 49 3.1.2 仙人掌間的相互影響 51 3.1.3 顯示生命值和得分 53 3.1.4 暫停和恢復 54 3.1.5 有關whack-a-cac游戲的*后問題 55 3.2 itunes connect 55 3.3 game center管理器 58 3.4 認證 60 3.4.1 常見的認證錯誤 60 3.4.2 ios 6和新的認證系統 62 3.5 提交得分 64 3.5.1 向whack-a-cac中添加得分 66 3.5.2 展示排行榜 68 3.5.3 得分挑戰 70 3.5.4 深入討論排行榜 71 3.6 小結 72 第4章 成就系統 73 4.1 itunes connect 73 4.2 顯示成就進度 75 4.3 game center manager和認證 76 4.4 成就系統緩存 76 4.5 上報成就系統 77 4.6 添加成就關聯 79 4.7 進度完成通知欄 80 4.8 成就挑戰系統 80 4.9 向whack-a-cac添加成就系統 83 4.9.1 是否達成成就 83 4.9.2 部分完成的成就 85 4.9.3 多會話成就 86 4.9.4 攜帶成就和保存成就精度 87 4.9.5 基于時間的成就 88 4.10 重置成就系統 89 4.11 深入討論成就系統 90 4.12 小結 91 第5章 address book框架初步 93 5.1 支持address book很重要 93 5.2 address book開發的限制 93 5.3 示例程序 94 5.4 開始實現address book并運行 94 5.4.1 從address book讀取數據 96 5.4.2 從address book讀取多值數據 97 5.4.3 理解address book標簽 98 5.4.4 處理地址信息 99 5.5 address book圖形用戶界面 100 5.6 編寫代碼來創建聯系人 105 5.7 小結 107 第6章 music libraries框架 109 6.1 示例程序 109 6.2 創建播放引擎 110 6.2.1 注冊播放通知 111 6.2.2 用戶控制 112 6.2.3 處理狀態改變 114 6.2.4 時長和計時器 118 6.2.5 隨機播放和循環播放 119 6.3 資源選擇器 119 6.4 編程實現選擇器 121 6.4.1 播放隨機歌曲 121 6.4.2 謂詞匹配 123 6.5 小結 124 第7章 實現healthkit框架 125 7.1 healthkit介紹 125 7.2 health.app介紹 126 7.3 示例程序 126 7.4 向項目添加healthkit 127 7.5 請求授權health data 128 7.6 讀取healthkit特征數據 130 7.7 讀寫基本的healthkit數據 131 7.8 讀寫復雜的healthkit數據 133 7.9 小結 137 第8章 實現homekit框架 139 8.1 示例程序 139 8.2 homekit介紹 139 8.3 設置homekit組件 140 8.3.1 設置開發者賬號 140 8.3.2 啟用homekit功能 141 8.3.3 家庭管理器 142 8.3.4 家庭 143 8.3.5 房間和區域 144 8.3.6 附件 146 8.3.7 服務和服務組 149 8.3.8 動作和動作集 151 8.4 使用homekit accessory simulator進行測試 152 8.5 使用觸發器計劃動作 153 8.6 小結 154 第9章 json的使用和解析 155 9.1 json 155 9.1.1 使用json的好處 155 9.1.2 json資源 156 9.2 示例程序 156 9.3 訪問服務器 156 9.4 從服務器獲取json 156 9.4.1 創建請求 157 9.4.2 檢查反饋 157 9.4.3 解析json 158 9.4.4 顯示數據 158 9.5 發送消息 160 9.5.1 json數據編碼 160 9.5.2 向服務器發送json數據 162 9.6 小結 163 第10章 通知機制 165 10.1 本地通知和推送通知的區別 165 10.2 示例程序 166 10.3 應用設置 166 10.4 創建development push ssl certificate 168 10.5 開發配置文件 171 10.6 準備自定義聲音 175 10.7 注冊通知 175 10.8 設置本地通知 176 10.9 接收通知 178 10.10 推送通知服務器 179 10.11 發送推送通知 179 10.12 處理apns反饋 180 10.13 小結 181 第11章 基于cloudkit的云存儲 183 11.1 cloudkit基礎 183 11.2 示例程序 184 11.3 設置cloudkit項目 184 11.3.1 賬戶設置 184 11.3.2 啟用icloud功能 185 11.4 cloudkit概念 186 11.4.1 容器 186 11.4.2 數據庫 186 11.4.3 記錄 186 11.4.4 記錄區域 187 11.4.5 記錄標識符 187 11.4.6 asset對象 187 11.5 cloudkit基礎操作 188 11.5.1 獲取記錄 188 11.5.2 創建并保存記錄 189 11.5.3 更新和保存記錄 191 11.6 訂閱和推送 191 11.6.1 推送設置 192 11.6.2 數據變更的訂閱 192 11.7 用戶發現和管理 193 11.8 在dashboard中管理數據 197 11.9 小結 199 第12章 extension 201 12.1 extension的類型 201 12.1.1 today 201 12.1.2 share 202 12.1.3 action 202 12.1.4 photo editing 202 12.1.5 document provider 202 12.1.6 custom keyboard 202 12.2 理解extension 202 12.3 api限制 203 12.4 創建extension 203 12.5 today extension 205 12.6 在host app和extension間共享代碼和信息 206 12.7 apple watch extension 207 12.8 小結 209 第13章 handoff 211 13.1 示例程序 211 13.2 handoff基礎 211 13.3 實現handoff 213 13.3.1 創建用戶活動 213 13.3.2 繼續執行一個活動 215 13.4 在基于文檔的應用中實現handoff 216 13.5 小結 218 第14章 airprint 219 14.1 airprint打印機 219 14.2 測試airprint 220 14.3 打印文本 221 14.3.1 打印信息 222 14.3.2 設置頁面范圍 222 14.3.3 uisimpletextprint- formatter 223 14.3.4 錯誤處理 223 14.3.5 開始一個打印任務 224 14.3.6 打印機模擬器反饋 224 14.4 打印中心 225 14.5 打印呈現的html 226 14.6 打印pdf 227 14.7 小結 228 第15章 開始使用core data 229 15.1 core data的選擇 230 15.2 示例程序 231 15.3 開始一個core data項目 232 15.4 創建托管對象模型 235 15.4.1 創建實體 236 15.4.2 添加特性 236 15.4.3 建立關系 237 15.4.4 自定義托管對象子類 238 15.5 設置默認數據 238 15.5.1 插入新的托管對象 239 15.5.2 其他默認的數據設置 方法 240 15.6 顯示托管對象 240 15.6.1 創建取回請求 241 15.6.2 根據對象id取回托管對象 242 15.6.3 顯示對象數據 244 15.6.4 使用謂詞 245 15.7 取回結果控制器介紹 246 15.7.1 準備取回結果控制器 247 15.7.2 整合表視圖和取回結果控制器 248 15.7.3 對core data變化的響應 250 15.8 添加、編輯和刪除托管對象 253 15.8.1 插入新的托管對象 253 15.8.2 刪除托管對象 254 15.8.3 編輯現有的托管對象 255 15.8.4 保存和回滾修改 255 15.9 小結 257 第16章 使用社交框架整合twitter和facebook 259 16.1 示例程序 259 16.2 用戶登錄 260 16.3 使用slcomposeview-controller 261 16.4 使用自定義界面發送消息 263 16.4.1 向twitter發送消息 263 16.4.2 向facebook發送消息 267 16.4.3 創建facebook應用 267 16.5 訪問用戶時間軸 272 16.5.1 twitter 272 16.5.2 facebook 277 16.6 小結 281 第17章 后臺任務處理 283 17.1 示例程序 283 17.2 檢查后臺運行的可行性 284 17.3 在后臺完成任務 285 17.3.1 后臺任務標識符 286 17.3.2 超時處理程序 286 17.3.3 完成后臺任務 287 17.4 實現后臺活動 288 17.4.1 后臺活動的類型 288 17.4.2 在后臺播放音樂 289 17.5 小結 292 第18章 多線程開發的性能 293 18.1 示例程序 293 18.2 隊列介紹 294 18.3 在主線程上運行 295 18.4 在后臺運行 296 18.5 在操作隊列中運行 298 18.5.1 并發操作 298 18.5.2 串行操作 299 18.5.3 取消操作 301 18.5.4 自定義操作 302 18.6 在調度隊列中運行 303 18.6.1 并發調度隊列 304 18.6.2 串行調度隊列 305 18.7 小結 307 第19章 使用keychain和touchid保護并訪問數據 309 19.1 示例程序 310 19.2 創建和使用keychain 310 19.2.1 創建新的keychainitemwrapper 310 19.2.2 保存和獲取pin 312 19.2.3 keychain特性鍵 312 19.2.4 保護字典對象 313 19.2.5 重置keychain元素 315 19.2.6 在應用間共享keychain 315 19.2.7 keychain錯誤代碼 316 19.3 實現touch id 317 19.4 小結 318 第20章 處理圖片和過濾器 319 20.1 示例程序 319 20.2 基本圖片數據和顯示 319 20.2.1 實例化圖片 319 20.2.2 顯示圖片 321 20.2.3 使用圖片選擇器 323 20.2.4 調整圖片尺寸 325 20.3 core image過濾器 326 20.3.1 過濾器類別和過濾器 326 20.3.2 過濾器特性 328 20.3.3 初始化圖片 331 20.3.4 渲染過濾后的圖片 331 20.3.5 鏈式過濾 332 20.4 特征檢測 333 20.4.1 創建人臉檢測器 334 20.4.2 處理人臉特征 334 20.5 小結 336 第21章 集合視圖 337 21.1 示例程序 337 21.2 集合視圖介紹 338 21.2.1 創建一個集合視圖 338 21.2.2 為集合視圖實現數據源方法 340 21.2.3 實現集合視圖委托方法 342 21.3 定制集合視圖和流布局 344 21.3.1 基礎定制 344 21.3.2 修飾視圖 346 21.4 創建定制布局 349 21.5 集合視圖動畫 353 21.5.1 集合視圖布局切換 354 21.5.2 集合視圖布局動畫 355 21.5.3 集合視圖變化動畫 357 21.6 小結 357 第22章 textkit介紹 359 22.1 示例程序 359 22.2 nslayoutmanager介紹 360 22.3 動態鏈接檢測 362 22.4 檢測點擊 363 22.5 路徑排除 364 22.6 content specific highlighting特性 365 22.7 使用dynamic type更改字體設置 370 22.8 小結 371 第23章 手勢識別 373 23.1 手勢識別的類型 373 23.2 基礎手勢識別的用法 374 23.3 示例程序介紹 375 23.3.1 點擊識別動作 375 23.3.2 捏壓識別動作 377 23.4 在一個視圖中識別多個手勢 378 23.4.1 手勢識別的工作原理 380 23.4.2 在一個視圖中識別多個手勢:redux 381 23.4.3 請求手勢識別失敗 382 23.5 定制uigesturerecognizer子類 384 23.6 小結 384 第24章 訪問照片庫 385 24.1 示例程序 385 24.2 photos框架 386 24.3 使用資源集合和資源 386 24.3.1 權限 387 24.3.2 資源集合 388 24.3.3 資源 391 24.4 照片庫中的編輯操作 393 24.4.1 編輯資源集合 393 24.4.2 編輯資源 395 24.5 處理照片流 398 24.6 小結 398 第25章 passbook和passkit 399 25.1 示例程序 400 25.2 設計通行證 400 25.2.1 通行證的類型 400 25.2.2 通行證布局——登機牌 401 25.2.3 通行證布局——優惠券 401 25.2.4 通行證布局——入場券 402 25.2.5 通行證布局——通用卡 402 25.2.6 通行證布局——購物卡 402 25.2.7 通行證的顯示 403 25.3 創建通行證 404 25.3.1 基礎通行證標識 405 25.3.2 通行證相關信息 405 25.3.3 條形碼識別 406 25.3.4 通行證視覺外觀信息 406 25.3.5 通行證區域 407 25.4 通行證的簽名和封裝 409 25.4.1 創建pass type id 409 25.4.2 創建通行證簽名證書 411 25.4.3 創建清單 415 25.4.4 通行證的簽名和封裝 415 25.4.5 測試通行證 416 25.4.6 具體應用中的通行證交互 417 25.5 自動更新通行證 426 25.6 小結 426 第26章 調試和工具 427 26.1 調試 427 26.1.1 **個計算機錯誤 427 26.1.2 xcode基礎調試 428 26.2 斷點 430 26.2.1 定制斷點 430 26.2.2 標志斷點和異常斷點 431 26.2.3 斷點范圍 432 26.3 使用調試器 432 26.4 工具 433 26.4.1 工具界面 434 26.4.2 time profiler工具 436 26.4.3 leaks工具 438 26.4.4 進一步了解調試工具 440 26.5 小結 440
展開全部
精通Ios框架-(第2版) 作者簡介
Kyle
Richter是MartianCraft公司的CEO,MartianCraft公司曾贏得Mobile Development
Studio稱號。Kyle在20世紀90年代初就開始從事軟件開發工作,并始終專注于基于蘋果公司平臺的開發,他在iOS開發方面已經出版和共同出版了多種著作,包括Beginning
iOS Game Center Development、Beginning Social Game Development和iOS Components
and Frameworks。利用管理MartianCraft公司每日運營的同時,Kyle還要在全球出差,介紹有關開發和公司管理的經驗,F在佛羅里達群島是他的家,因為在那里他要花時間陪伴他可愛的邊境牧羊犬。你也可以通過@kylerichter在Twitter上找到他。
Joe Keeley是MartianCraft公司的合伙人及首席工程師。Joe為iOS客戶項目提供技術指導并主導了許多成功的項目。他從Apple
Ⅱ開始就熱衷于程序開發,在他的職業生涯中從事過許多不同技術和系統項目的開發。在美國,Joe出版了多種有關iOS和Mac技術開發的參考書。Joe和妻子及兩個女兒居住在科羅拉多州丹佛市,在閑暇時間他喜歡從事擊劍運動。他在Twitter上的名字是@jwkeeley。