●目 录 CONTENTS章 多线程编程 11.1 多线程概念 11.1.1 多线程概述 11.1.2 线程的串行和并行 41.1.3 多线程技术种类 51.2 使用NSThread实现多线程 51.2.1 线程的创建和启动 51.2.2 线程的状态 91.2.3 线程间的安全隐患 111.2.4 线程间的通信 151.3 使用GCD实现多线程 171.3.1 GCD简介 171.3.2 创建队列 191.3.3 提交任务 20第2章 网络编程 512.1 网络基本概念 512.1.1 网络编程的原理 512.1.2 URL介绍 522.1.3 TCP/IP和TCP、UDP 532.1.4 Socket介绍 552.1.5 实战演练——Socket聊天 572.2 原生网络框架NSURLConnection 622.2.1 NSURLRequest类 622.2.2 NSURLConnection介绍 632.2.3 Web视图 652.2.4 实战演练——Web视图加载 百度页面 672.3 数据解析 702.3.1 配置Apache服务器 702.3.2 XML文档结构 742.3.3 解析XML文档 752.3.4 实战演练——使用NSXMLParser 解析XML文档 752.3.5 JSON文档结构 872.6.1 SDWebImage介绍 1272.6.2 AFNetworking和ASIHTTPRequest第3章 iPad开发 1353.1 iPhone和iPad开发的异同 1353.2 UIPopoverController 1373.2.1 UIPopoverController简介 1373.2.2 UIPopoverController的使用 1393.2.3 实战演练——出Popover视图 142第4章 多媒体和硬件 1734.1 使用AVAudioRecorder录制音频 1734.2 音效、音频的播放 1764.2.1 使用系统声音服务播放音效 1764.2.2 使用AVAudioPlayer播放音乐 1774.2.3 使用MPMediaPickerController 选择系统音乐 1804.2.4 播放在线音乐 1824.2.5 实战演练——音乐播放器 1854.3 相机和图库 1934.3.1 使用UIImagePickerController 操作摄像头和照片库 1934.3.2 实战演练——拍照和相片库 196第5章 Address Book 2205.1 iOS 7及iOS 8的管理框架 2205.1.1 使用Address Book框架管理 2205.1.2 使用Address BookUI框架管理 2255.2 实战演练——使用UIApplication 打和发短信 229第6章 使用MapKit开发地图服务 2446.1 根据地址定位 2446.1.1 根据地址定位 2456.1.2 正向地理编码和反向地理编码 2496.2 MapKit框架 2516.2.1 MKMapView控件 2516.4 使用iOS 7新增的MKTile Overlay覆盖层 2626.5 使用iOS 7新增的MKDirections 获取导航路线 264第7章 推送机制 2797.1 推送机制概述 2797.2 iOS本地通知 2817.3 实战演练——闹钟 283第8章 内购、广告和指纹识别 3038.1 内购 3038.1.1 在App Store上的准备工作 3048.1.2 实现内购功能 318第9章 屏幕适配 3289.1 屏幕适配历史背景介绍 3289.2 Autoresizing 3309.2.1 在Interface Builder中使用 Autoresizing 3309.2.2 在代码中设置AutoresizingMask 属性 3339.3 Auto Layout 3369.3.1 在Interface Builder中管理Auto Layout 3369.3.2 实战演练——使用Auto Layout 布局界面 3380章 国际化 35310.1 概述 35310.2 国际化应用程序显示名称 35510.3 国际化界面设计 359
内容简介
本书系统全面地讲解了iOS开发的中、不错知识,主要内容包括多线程编程、网络编程、iPad开发、多媒体硬件、Address Book、使用Mapkit开发地图服务、推送机制、内购、广告、指纹识别、屏幕适配及靠前化等。本书采用项目驱动的方式来讲授理论。全书共有60余个经典的真实项目,这些项目可以帮助读者更好地理解各个知识点在实际开发中的应用,也可以供读者开发时作为参考。本书附有配套视频、源代码、习题、教学课件等资源,而且为了帮助初学者更好地学习本教材中的内容,我们还提供了在线答疑,希望得到更多读者的关注。本书既可作为高等院校本、专科计算机相关的程序设计课程教材,也可作为iOS技术提升的培训教材,适合有一定iOS开发基础的读者使用。