3

我有一个配置了 watch OS1 架构的项目。现在我想在同一个项目中只支持 watch OS2 架构。因此,为了在我现有的项目中只配置 watch OS2,我删除了 watch OS1 的所有目标,包括 Watch App 和 Watch Extension,并为 watch OS2 添加了一个新目标。使用此设置,如果我直接运行我的应用程序,它就可以正常工作。iPhone 应用程序和手表应用程序都已安装。

当我将具有 watch OS1 设置的 iPhone 应用程序升级到具有 watch OS2 目标的最新设置时,我遇到了问题。当我按照以下步骤将我的应用程序升级到最新版本时,我的 watch OS2 应用程序不会显示在iPhone 上的“我的手表”应用程序中。因此,我无法在手表中安装我的 watch OS2 应用程序。

我遵循的步骤是:

  1. 安装具有 watch OS1 目标的 iPhone 应用程序。不要在手表设备上安装手表 OS1 应用程序。
  2. 点击手机上的“我的手表”应用程序并观察,它会在此部分显示我的手表应用程序名称。
  3. 现在将此应用程序升级到具有 Watch OS2 目标的最新应用程序。
  4. 然后在 iPhone 上点击“我的手表”应用程序并观察,此部分中没有显示我的手表应用程序名称。

但是通过以下步骤,我的手表应用程序仍然存在于“我的手表”应用程序中。

  1. 安装具有 watch OS1 目标的 iPhone 应用程序。在手表设备上安装手表 OS1 应用程序。
  2. 点击手机上的“我的手表”应用程序并观察,它会在此部分显示我的手表应用程序名称。
  3. 现在将此应用程序升级到具有 Watch OS2 目标的最新应用程序。
  4. 然后点击 iPhone 上的“我的手表”应用程序并观察,我的手表应用程序持续存在于“我的手表”应用程序中。

我无法找出解决方案。

4

1 回答 1

0

您能够在配对的 Apple Watch 上安装 WatchKit 1 应用程序这一事实表明它正在运行 watchOS 1。根据您的描述,iPhone 上的 Watch 应用程序似乎不会向您显示适用于 watchOS 版本的 WatchKit 应用程序比您安装的更新。

您假设在场景 2 中,iPhone 上的 Watch 应用程序向您展示了安装在 Watch 上的新 WatchKit 2 应用程序。但是,我建议您所看到的表明 WatchKit 1 应用程序仍安装在 Watch 上。(这似乎是一个缓存问题,因为如果 WatchKit 1 应用程序已从父应用程序中删除,它将不会在 Watch 上保留很长时间。)

要添加到您的测试场景中的另外两件事是:2) 在场景 2 中,在第 2 步和第 3 步之间从 Apple Watch 中删除 WatchKit 1 应用程序,然后观察会发生什么。我预计您会看到类似于场景 1 中的结果。 1) 将 Apple Watch 升级到 watchOS 2,然后观察会发生什么。

一个合理的问题是问你为什么继续运行带有 watchOS 1 的 Apple Watch。由于每一款 Apple Watch 都可以运行 WatchOS 2,而且用户没有理由继续使用早期版本,所以没有理由继续发货或支持 WatchKit 1 扩展......即使该 API 的某些元素使我们作为开发人员的生活变得更轻松,对于某些用例。WatchKit 1 已经死了。

于 2016-04-04T20:13:00.427 回答