×
暂无评论
图文详情
  • ISBN:9787302433811
  • 装帧:暂无
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:441
  • 出版时间:2016-05-01
  • 条形码:9787302433811 ; 978-7-302-43381-1

本书特色

苹果的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 ■ 调试工具的介绍及应用的优化

内容简介

畅销书作者kyle richter全新作品   每一章包含一个完整的objective-c示例程序 另有一个跨章节的game center案例 演示了如何进行组合多个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 第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  
展开全部

作者简介

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还要在全球出差,介绍有关开发和公司管理的经验。现在佛罗里达群岛是他的家,因为在那里他要花时间陪伴他可爱的边境牧羊犬。你也可以通过@kylerichter在Twitter上找到他。 Joe Keeley是MartianCraft公司的合伙人及首席工程师。Joe为iOS客户项目提供技术指导并主导了许多成功的项目。他从Apple Ⅱ开始就热衷于程序开发,在他的职业生涯中从事过许多不同技术和系统项目的开发。在美国,Joe出版了多种有关iOS和Mac技术开发的参考书。Joe和妻子及两个女儿居住在科罗拉多州丹佛市,在闲暇时间他喜欢从事击剑运动。他在Twitter上的名字是@jwkeeley。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航