 Watch开发学习 (一)

WatchKit

WatchKit是苹果公司为Apple Watch创建混合型应用程序的框架,且是和Xcode 6.2绑在一起的。

WatchKit工作原理是将你的APP拆分成两个不同的部分:


 Watch开发学习 (一)_第1张图片
  • Apple Watch只包含storyboard和asset catalog 之类的界面资源,即便它可以处理用户输入,但它实际上根本不会执行任何代码。换句话说, Apple Watch更像是一个精简的客户端。
  • iPhone包含了所有的代码,而且把它作为一个扩展来执行,就跟Today或Action扩展一样。
  • AppleWatch和iPhone的通信都封装在后台由WatchKit自主进行
  • 通知分两种Short-Look,Long-Look
Long-Look通知: Long-Look通知可以是静态或动态的。
  1. Static通知: 静态通知包含一个利用通知payload自动填充了的单一标签。你可以在watch app的storyboard里面创建一个静态通知场景,但是除了改变sash和标题的颜色外,你不能真正地对其进行自定义。

  2. Dynamic通知: 动态通知要求你子类化InterfaceController。它从storyboard实例化,而且你可以提供自己的定制界面。注意一点,并不能担保动态通知界面肯定会展现出来。例如,如果手表的电池量很低时,系统可能会决定展现静态通知界面以便节省电量,因为创建静态通知界面成本更低。

  • AppleWatch中的界面元素并不是继承自UIView或CALayer

  • Watch应用拥有iOS应用的完整用户界面。用户从主界面启动手表应用,来查看或处理数据。

  • 使用glance界面以便在Watch应用上显示即时、相关的信息,该界面是可选的只读界面。并不是所有的Watch应用都需要使用glance界面,但是如果使用了它的话就可以让用户方便地访问iOS应用的数据。

  • 自定义通知界面可以让您修改默认的本地或远程通知界面,并可以添加自定义图形,内容以及设置格式。自定义通知界面是可选的。

创建Watch应用

Watch应用是在Apple Watch上交互的主体。Watch应用通常是从Apple Watch的主屏幕上访问,并且能够提供一部分关联iOS应用的功能。Watch应用的目的在于让用户快速浏览相关数据。

Watch应用与在用户iPhone上运行的WatchKit应用扩展协同工作,它不包含任何自定义代码,仅仅只是存储了故事板以及和用户界面相关联的资源文件。WatchKit应用扩展是实现这些操作的核心所在。它包含了页面逻辑以及用来管理内容的代码,实现用户操作响应,并且刷新用户界面。由于应用扩展是在用户的iPhone上运行,因此它能轻易地和iOS应用协同工作,比如说收集坐标位置或者执行其他长期运行任务。

要开始创建Watch应用,请参考:App Essential

创建Glance界面

Glance是一个展示即时重要信息的密集界面。glance中的内容应当言简意赅,因为其目的是让用户迅速地查看消息。Glance不支持滚动,因此整个glance界面只能在单个界面上显示,您需要保证它拥有合适的大小。glance只允许只读,因此不能包含按钮、开关,或者其它交互动作。点击glance则会直接启动您的Watch应用。

您需要在WatchKit应用扩展中添加管理glance的代码。用来管理glance界面的类与Watch应用的类相同。虽然如此,但是很明显glance更容易实现,因为其无需响应用户交互动作。

要开始创建glance界面,请参阅:Glance Essentials

自定义通知界面

Apple Watch能够和与之配对的iPhone协同工作,来显示本地或者远程通知。Apple Watch首先使用一个小窗口来显示进来的通知。当用户移动手腕希望看到更多的信息时,这个小窗口便会显示更详细的通知内容。应用可以提供详情界面的自定义版本,并且可以添加自定义图像或者改变系统默认的通知信息。

Apple Watch支持iOS 8中引入的交互式通知。交互式通知通过在通知上添加按钮来让用户立即做出回应。比如说,一个日历时间通知可能会包含了接收或拒绝某个会议邀请的按钮。只要你的iOS 应用支持交互式通知,那么Apple Watch就会自行向自定义或默认通知界面上添加合适的按钮。你所需要做的只是在WatchKit应用扩展中处理这些事件而已。

想要创建一个自定义通知界面,请参看:Notification Essentials.

你可能感兴趣的:( Watch开发学习 (一))