首页 > 网站 > 建站经验 > 正文

IOS开发:Watch!Kit的应用程序要点

2019-11-02 14:17:32
字体:
来源:转载
供稿:网友

   WatchKit 应用程序架构

  WatchKit

多瑙影院[www.aikan.tv/special/duonaoyingyuan/]
应用程序是一个运行在 Apple Watch 中的可执行文件。它包括 storyboard 和渲染屏幕时所需的资源文件。

  WatchKit 扩展则是运行在 iPhone 上的可执行文件。包括管理应用程序界面的逻辑代码,以及处理用户的交互操作。

  为了程序界面的正常使用,这两部分需要一起运行。用户与应用程序交互的典型步骤如下:

  用户与 WatchKit 应用程序交互。

  WatchKit 应用程序分析交互情况,并选择将被管理的 storyboard。

  WatchKit 与 iPhone 通讯,以运行 WatchKit 扩展。

  WatchKit 扩展初始化并创建需要提供给 WatchKit 应用程序 storyboard 使用的对象。

  Storyboard 根据 WatchKit 扩展创建的对象,生成 scene,并将其显示到 Apple Watch 中。

  WatchKit 应用程序和 WatchKit 将会共享一些信息,直到用户停止使用 WatchKit 应用程序。此时,iOS 将使 WatchKit 扩展休眠,直到有新的用户交互。

  下面的这个图演示了这个流程:

IOS开发:WatchKit的应用程序要点 电脑高手

  上图中有个重要的概念就是 storyboard 响应用户的操作并配置需要显示的屏幕内容的方法。这归功于 interface controller对象 (WKInterfaceController的实例),相当于 iOS 中的 view controller。

  与 view controller 不同的是 interface controller 不管理屏幕中实际的 view,WatchKit 以透明的方式对 view 进行处理。一般,一个 WatchKit 应用程序会有多个 interface controller,用来显示不同的数据类型,只不过同时只显示一个罢了。

  WatchKit 应用程序的生命周期

  一个 WatchKit 应用程序的启动方式有 3 种:

  用户点击 Apple Watch 主屏幕上的图标。

  用户与应用程序的 glance 交互。

  用户与通知交互。

  上面的每种方式都将初始化 WatchKit 应用程序和 WatchKit 扩展。根据上面不同的启动方式,WatchKit 会利用相应的 storyboard 加载 scene,并请求 WatchKit 扩展初始化相应的 interface controller。

  下面的图演示了相关过程:

  如图所示,在用户界面中,interface controller 对象管理着相关交互。当用户与 Apple Watch 上的应用程序交互时,WatchKit 扩展会运行。一旦用户停止交互或者从程序中退出,iOS 将关闭当前的 interface controller,并休眠扩展。在用户和 Apple Watch 之间,这样的交互方式非常简洁,interface controller 应该是轻量级的,并且快速的执行任务。

  下面的图演示了相关过程:

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表