本書基于Apple*發布的iOS 7編寫。書中循序漸進地介紹了iOS項目開發的一般步驟和基礎知識,主要內容包括設計及美化用戶界面,用Interface Builder構建視圖,切換和彈出框,用導航控制器導航頁面,用表視圖結構化數據,讀寫和顯示數據以及地圖和定位功能等。
本書通過簡潔的語言和詳細的步驟,幫助讀者迅速掌握開發iOS應用程序所需的基本知識,適合有一定編程經驗的讀者閱讀。本書可作為高等學校教材,也可供從事iOS開發的人員參考。
本書重點講解Android系統功能模塊涉及的主要知識點,并通過技能擴展講解常用的實用技能。本書的項目原型是公司電子商務的基礎版本,有助于讀者了解一個真實項目的整個開發流程。
前言ForewordiOS平臺改變了公眾對移動設備的看法,iPhone憑借著功能齊備的應用程序、界面架構以及其他平臺無法媲美的觸控,提供了方便的手機功能,證明了小屏幕也能成為高效的工作區。
在Apple手機的開發人員看來,用戶體驗至關重要。他們設計了iOS,其外觀和行為不再像笨拙的桌面應用程序的移植版本,用戶能夠使用手指(而不是光筆或鍵盤)控制手機,從而讓應用程序使用起來更加自然而有趣。
通過AppStore,Apple公司向開發人員提供了一種最佳的數字發布系統。開發人員可以將應用程序提交到AppStore,且只需要支付少量的年度開發人員會費。人們開發了針對各種領域的游戲和應用程序,其范圍涵蓋了從學前教育到退休生活的所有階段。由于iPhone、iPod Touch和iPad的用戶群非常龐大,因此不管什么內容都能找到合適的用戶。
Apple公司每年都會發布新的iOS設備,其速度更快、分辨率更高、功能更強大。每次硬件更新都帶來了新的開發機會,提供了將藝術融合到軟件中的新途徑。
1. 誰能成為iOS開發人員
只要有學習興趣,有時間探索和使用Apple開發工具,并擁有一臺運行Lion的Inter Macintosh計算機,便可開始iOS開發了。雖然不可能在一夜之間就開發出iOS應用程序,但只要多加練習,完全可以在幾天內編寫出第一款應用程序。在Apple開發工具上花費的時間越多,創建出激動人心的應用程序的可能性就越大。
2. 本書適合的讀者
本書是為熟悉iOS開發語言ObjectiveC的讀者編寫的,讀者不需要具有Cocoa和Apple開發的經驗;當然,讀者如果有一定的開發經驗,將會更容易掌握這些工具和技術。盡管如此,本書對讀者還是有一定要求的,就是讀者必須愿意花費時間進行學習與練習。如果讀者只是閱讀每章的內容,而不完成其中的項目,就會錯過一些重要概念。另外,讀者還需認真閱讀Apple開發文檔,并研究本書介紹的主題,這樣才能掌握全部內容。
編著者◆iOS項目開發教程
目錄Contents第1章iOS應用開發概述1
1.1iOS應用開發的歷史與現狀1
1.2iOS應用的基本架構2
1.2.1可觸摸層2
1.2.2媒體層3
1.2.3核心服務層4
1.2.4核心操作系統層5
1.3iOS應用開發的特點5
1.4iOS開發工具簡介6
1.5創建并運行第一個iOS應用9
1.6基礎知識與技能回顧11
練習11
第2章為開發做好準備12
2.1客戶端的準備12
2.2服務端的準備12
2.2.1Web Services的搭建12
2.2.2DB Server的搭建14
2.3幾個必備的基礎技能25
2.4基礎知識與技能回顧26
練習26
第3章MyDemo項目介紹27
3.1項目背景27
3.2項目需求分析27
3.3項目用例分析27
3.4項目數據庫分析28◆iOS項目開發教程目錄3.5基礎知識與技能回顧29
練習29
第4章用戶注冊30
4.1用戶注冊總體設計30
4.1.1流程圖30
4.1.2時序圖30
4.2數據庫的準備31
4.3服務端接口的準備32
4.4用戶注冊的實現32
4.4.1客戶端代碼開發32
4.4.2客戶端與服務端交互64
4.5用戶注冊的調試71
4.6讓用戶免去注冊的煩惱73
4.7基礎知識與技能回顧73
練習73
第5章用戶登錄74
5.1用戶登錄總體設計74
5.1.1流程圖74
5.1.2時序圖75
5.2服務端接口的準備75
5.3用戶登錄的實現75
5.3.1客戶端代碼開發76
5.3.2客戶端與服務端交互82
5.4用戶登錄的調試84
5.5使用第三方賬號登錄86
5.5.1什么是第三方賬號86
5.5.2第三方賬號登錄方式86
5.5.3使用第三方賬號登錄86
5.6基礎知識與技能回顧95
練習95
第6章向用戶展示內容96
6.1數據庫的準備96
6.2服務端接口的準備97
6.3實現內容展示靜態頁面98
6.3.1圖文列表展示98
6.3.2詳情內容展示115
6.3.3客戶端與服務端交互121
6.4圖片的處理與效果實現131
6.4.1圖片添加手勢131
6.4.2分頁與翻頁133
6.5基礎知識與技能回顧138
練習138
第7章支持用戶基于LBS的應用139
7.1用戶定位139
7.1.1LBS與常見第三方地圖139
7.1.2在地圖上找到自己140
7.2搖一搖144
7.2.1客戶端代碼開發145
7.2.2客戶端與服務端交互149
7.3基礎知識與技能回顧151
練習152
第8章讓用戶搜索153
8.1服務端接口的準備153
8.2常用搜索方式與應用開發154
8.2.1客戶端代碼開發154
8.2.2客戶端與服務端交互162
8.3基礎知識與技能回顧163
練習163
第9章與用戶互動164
9.1數據庫的準備164
9.2服務端接口的準備165
9.3讓用戶參與評價166
9.3.1客戶端代碼開發167
9.3.2客戶端與服務端交互178
9.4讓用戶分享187
9.4.1什么是分享187
9.4.2讓用戶將內容分享到社交平臺187
9.5給用戶推送消息191
9.5.1推送原理192
9.5.2第三方推送介紹192
9.5.3集成第三方推送193
9.6基礎知識與技能回顧202
練習203
第10章添加商戶信息204
10.1服務端接口的準備204
10.2添加商戶信息的實現205
10.2.1客戶端代碼開發205
10.2.2客戶端與服務端交互211
10.3基礎知識與技能回顧213
練習213
第11章讓用戶的使用體驗更佳214
11.1用戶網絡環境214
11.2用戶手機環境216
11.3基礎知識與技能回顧218
練習218
第12章發布和管理iOS應用219
12.1發布iOS應用219
12.1.1申請發布證書219
12.1.2發布應用到App Store224
12.2版本管理229
12.3讓用戶升級232
12.4基礎知識與技能回顧235
練習235
第13章HTML 5236
13.1什么是HTML 5236
13.2用HTML 5實現內容展示236
13.3基礎知識與技能回顧242
練習242
參考文獻243