net)公司的创始人,该技术公司专注于**的Web 和移动应用技术的动手培训。Wei-Meng 经常在国际会议上发表演讲,并与他人合著了许多书,涉及的领域包括.NET、XML、Android 和iOS 相关技术。他热衷于为informIT.com 和mobiForge.com 写作。
周智勋,云南大理人,网名BeyondVincent(破船) 。资深移动软件开发工程师,目前居住在昆明。自2007年开始涉足移动领域。早期主要从事Symbian智能手机软件开发。伴随移动互联网的快速推进,经历了Brow、Windows Mobile、iOS、Windows Phone等多个移动开发平台的洗礼。在自己的博客(http://BeyondVincent.com)上发表了许多优质技术文章,获得了广大移动开发者的支持。曾多次组织并参与"DevDiv移动开发社区技术丛书"的编写,近期译著有《写给大忙人看的 Swift》。
陈姣,资深程序员,有丰富的移动开发经验。目前主要从事移动产品的研发。另外,熟悉 HTML 5 Web 应用开发、Java 后端、Oracle 数据库,是一名真正的全栈工程师。
致谢xix
关于作者xxi
1 WatchKit编程入门1
Apple Watch的规格1
获取开发工具2
理解WatchKit程序的架构3
Apple Watch程序的安装4
Apple Watch与iPhone之间的交互4
与Containing iOS App通信5
Apple Watch程序的类型6
Hello, World!6
创建一个iPhone工程6
添加一个WatchKit App Target8
检查Storyboard11
WatchKit App的生命周期12
修改Interface Controller13
在模拟器上运行程序14
小结16
2 Apple Watch的界面导航17
Interface Controller和Storyboard17
Interface Controller的生命周期19
Interface Controller之间的导航22
Hierarchical导航23
Page-Based导航27
Interface Controller之间的数据传递28
自定义返回和取消按钮的文字34
使用代码进行导航35
显示一系列的页面38
修改当前显示的页面40
小结43
3 Apple Watch的用户界面45
响应用户界面45
按钮(Button)46
开关(Switch)59
滑块(Slider)62
显示信息65
标签(Label)65
图片(Image)65
表格(Table)71
获取信息82
获取文本信息82
获取表情符号85
控件的布局86
力感触控91
显示上下文菜单91
通过代码添加菜单项97
小结98
4 iOS程序接口99
本地化99
本地化用户界面102
创建本地化字符串106
使用日期控件112
WatchKit App和Extension之间的通信113
位置数据114
显示地图123
访问web服务126
共享数据130
小结148
5 显示通知149
什么是通知149
Apple Watch中通知的类型152
实现Short-Look界面153
实现Long-Look界面167
小结178
6 显示Glance179
什么是Glance179
实现Glance180
自定义Glance182
测试Glance186
让程序变得实用186
创建一个共享的App Group187
实现后台抓取188
更新Glance192
小结194
近些年,随着政府着力推进“互联网+”战略,国内互联网的发展进入了新的里程。移动互联网、宽带互联、物联网、智能硬件等相关的创业公司如雨后春笋般出现,并表现出了极强的创新能力和生命力。以小米为代表的国内创业公司,在物联网、智能硬件、可穿戴领域陆续推出了小米手机、小米路由器、小米智能电视、小米手环等创新产品,公司估值也已经达到了450亿美金。传统的老牌科技公司,如谷歌、苹果等,在智能硬件和可穿戴领域也是出手不凡,陆续推出Google Glass、Apple Watch等重量级产品。特别是Apple Watch,一经推出就引起了果粉强烈的兴趣,其于2015年4月10日(上市首日)在美国的在线预订量就超过了百万部。目前Apple Watch还没有通过苹果零售店销售,仅提供了在线销售,相信如果开放零售店等销售渠道,销量可能还会有较大提升。
智能硬件和可穿戴领域发展前景非常好。Apple Watch给我们提供了新的机会,为Apple Watch用户提供服务成了当前迫切的需求。苹果公司几次产品形态上的变化都带来了一批新应用的崛起,在iPad上,这种情况我们已经见过。几年之后,Watch也会成应用开发者们的新战场。由于Apple Watch会时刻带在用户手腕上,它是比iPhone手机离用户更近的设备,跟生活相关的服务可能会成为开发者争夺的重点,比如空气质量、天气预报、股票信息等。本书正是在这种背景下翻译完成的,希望能够给开发者提供力所能及的帮助。
按照一般规律,一款产品面世后需要较长时间才会有比较完善的配套服务和设施。由于Apple Watch是一款销量较好的产品,加上苹果公司的声誉及iOS较完善的生态环境,各厂商都在加紧完成在Apple Watch上的布局,本书的出版希望能帮助开发者快速把握住这个机会。
由于Apple Watch上市不久,相关的资料相对缺乏,高质量的开发指导书籍更是少之又少。我们知道,一本好的移动开发参考书既需要让经验较少的开发人员快速了解相关技术概念及开发方法,也要让经验较多的移动开发人员快速找到自己想要的资料。本书从基本概念介绍入手,循序渐进引出Apple Watch的开发,通过实例比较详细地介绍了各类开发组件的使用方法,对于读者快速掌握Apple Watch开发有很好的帮助。
本书的作者李伟梦先生是一名技术专家,经常在国际会议上发表演讲,有丰富的移动开发技术培训经验。本书的译者周智勋先生一直从事移动开发事业,特别是iOS开发,拥有多年工作经验,已翻译了多本移动开发书籍。
衷心希望本书的出版能够加快Apple Watch开发领域的技术推广速度,为该领域的研发工程师提供一手资料。
本人十分高兴地向广大读者推荐这本内容丰富的Apple Watch开发参考书,并且相信它会对读者有所启发和帮助。
360·手机安全专家·张金明
2015年·夏
推荐序2
话说,2009年我还在捣鼓着Symbian,工作之余就上Symbian技术论坛刷刷帖。当时的周智勋同学就已经是技术论坛管理员了,此人Symbian功力深厚,到处都是他精力无限的身影,提问题的帖子总能见到他认真的回答,大家都称他船哥。
后来,诺基亚走下坡路,连带着Symbian也开始没落了。论坛为了吸引开发者,也开出了iOS和Android的板块,一直找不到合适的版主,船哥就自己顶上了,那阵子翻译的国外关于iOS和Android的技术文章大部分都出自船哥之手,从此烙上了“船哥译品,必属精品”的印记。
很快,船哥已经可以游刃有余地指点论坛求教的新手。那时我也开始转到iOS阵营,觉得好玩,就申请了版主,回帖也算积极,所以除了论坛上接触,私下跟船哥也慢慢熟络起来,愉快地做起朋友来,那时我还很瘦,喜欢和他一起篮球和跑步。
再后来,我去了杭州,船哥也去了北京,由于工作繁忙,就很少能逮到机会聊天了。但是每次上论坛看帖,我都会去翻翻船哥又翻译了什么好的文章,回了什么精彩的帖子。
日子就这么过着,有一天,我觍着脸申请加入了巧哥(唐巧)组织的iOS开发者群。**个冒出来欢迎的人头像似曾相识,点进去一看,备注是“船哥”。哈哈,原来你也在这里。
在群里收获颇丰,经常会有好的国外技术文章被推荐。一旦有好文章贴出来,过不了几天,船哥就会淡淡地说,“看你们都觉得好,我就给翻译了。”翻译质量颇高,且高产,渐渐把我惯得一旦有好外文丢进来,就等着看他的译文了。
2013年,船哥回云南,主导做企业级App,在群里冒泡的机会越来越少了,我以为他因为忙也会放弃翻译的爱好。
前段时间他突然在群里说他翻译的Swift书要出版了,好家伙,原来是闭关憋大招。那个热爱翻译技术文章的船哥还在,而且功力精进,就像我已变成个“胖纸”,船哥还在乐此不疲地上传他打篮球、跑步时矫健身影的照片。
昨天船哥找到我说:“我又翻了一本,你帮我写个序呗。”我盯着屏幕上的“又”发呆了一会,好吧,面对如此勤奋的船哥,我怎么能不写点啥呢,即使回忆也好。
说来惭愧,虽然WatchKit随着Apple Watch大热。我却没有真正看完文档,对开发一个Watch App会遇到的问题也一知半解。
快速看完这本书,如何完整地开发Watch App在我脑中有了比较清晰的认识。这本书定位为指南,通过通俗易懂、循序渐进的语言介绍,加上简单清晰的示例代码、上手实战的练习,可以让一个新手快速掌握所需技术点,稍加练习,就可以轻松开发出一个属于自己的Watch App。
现在,越来越多的企业开始重视智能穿戴设备的开发。作为一名合格的移动端开发者,目光不应只是锁定在Phone和Pad上,更要重视一些颠覆性的智能穿戴设备,熟悉这些设备的应用开发不仅开拓眼界,更能给自己的技术能力加分。推荐对Apple Watch应用开发感兴趣的同学阅读此书,愿大家可以通过对它的学习快速上手。
希望本书对Watch 2.0的内容也尽快有完善和补充,祝愿船哥有更多好的作品。
支付宝·手机技术专家·方彬
2015年·夏
译者序
2009年,我莫名其妙地爱上了跑步,有时会结伴,不过大多数时候是一个人在跑步的路上,从刚开始的孤独,到后来的习惯,慢慢体会到了跑步的乐趣。也在跑步的路上认识了一些人,一些有趣的事。从一些前辈们的身上学到了不少宝贵的东西,或许我一生都将受益。跑步之初,我从没想过会跑完一个马拉松,跨过2012年北京马拉松终点那一刻,我深深体会到,只要坚持,把每天看不见的进步缓慢积累成看得见的改变,那些看似遥不可及的事情,都能找到出口,正如村上春树在他的书中引用的一句话“任何一把剃刀都自有其哲学。”
其实,从初中到大学,英语一直是我的一块心病,无论如何出招,怎么治都不见成效,导致我曾长期觉得人类的语言能力就是天生的,无论后期怎么努力,都无法弥补。
2007年大学毕业后,我主要从事移动应用开发,刚开始,在 Symbian 上做开发,由于国内外的信息严重不对称,许多开发资料都是英文的,英语水平很差的我只能硬着头皮、连蒙带猜地看着开发资料,并通过代码不断验证自己的理解。随着时间流逝,慢慢也就熟悉了英语资料,也会主动在网上看一些国外的技术文章,过程中,也渐渐学会了如何有效地使用谷歌获取资源(不幸的是,目前国内无法通过正常渠道访问谷歌了),从心理上,对英语不再那么拒绝了。
后来,也会在我的个人博客(http://beyondvincent.com/)上写一些文章,做一些总结和分享(2015年,由于精力有限,很少打理博客,人还在,请大家勿念),期间收获也不少。
再后来,陆陆续续写过书、翻译过书,对个人的认识和提升都比较有帮助。我出版了几本书后,很多人都问我,出书很赚钱吧?其实,了解中国出版业的人都应该知道,走出书致富这条路,对大多数人来说是行不通的。国内的用户都习惯了使用免费、盗版、破解的东西,况且用户的付费习惯及版权保护意识都非常薄弱。所以,劝告那些想早日实现财务自由的人,还是另寻出路吧。
今年夏季,电子工业出版社的编辑刘芸老师找到了我,说国外有一本关于Apple Watch开发类的书籍,要引进国内,问我是否感兴趣做翻译。由于我一直关注着Apple Watch的动向,加之以前也跟刘芸老师有过愉快的合作,因此没有多加思考,我就应了下来,与刘芸老师约定一个月完成初稿,也就是说我只有四个周末的时间来做这件事情。由于翻译此书要求的时间比较紧迫,我选择了与同事陈姣共同翻译。为了对时间做出有效的管理、集中注意力、提高效率,特意网购了一个计时器,计划每个周末的两天我都开启番茄工作法,全身心投入。刚开始,还有点担心进度和翻译质量问题。想不到该方法十分奏效,我只花了两个周末就完成了计划任务,同时也没有感觉到疲惫,可以用一气呵成来形容。
本书介绍了Apple Watch编程入门需要的所有基础内容,书中的主要内容包括Apple Watch程序的架构、界面导航、用户界面控件、相关接口、通知的显示、glance的使用等。书中提供了许多动手示例,这对于学习新语言非常有帮助。本书的作者李伟梦是一名技术专家,同时,他还是Developer Learning Solutions(learn2develop.net) 公司的创始人,他的写作风格非常好,文章读起来特别流畅。
在翻译期间,要特别感谢刘芸老师,是她在我翻译过程中,给予了**的支持,及时解决我遇到的难题,使得我能专注于书籍的翻译工作。
要感谢我的好友张金明和方彬,他们在百忙之中抽出时间,对本书的校稿工作做出了非常大的贡献,使得本书的翻译质量得到保障。
*后也要感谢我的妻子王琼梅,在我翻译期间,她做了许多家务,忍受了我无休止的长时间工作。
正是得益于他们的大力帮助,才使得此书与读者见面。
如果有缘你看到了本书,真心希望它能对你起到些许作用。如果你发现译文有误,拜托发邮件(BeyondVincent@gmail.com)告诉我,在此感激不尽。
只要坚持,把每天看不见的进步缓慢积累成看得见的改
¥69.90
¥1.00
¥99.00
¥398.00
¥1.00
¥59.90