【问题标题】:Can't install WatchKit app on Apple Watch无法在 Apple Watch 上安装 WatchKit 应用
【发布时间】:2015-07-05 01:36:41
【问题描述】:

我有一个在模拟器中运行良好的 WatchKit 应用程序。但是当我尝试在实际设备上运行它时,它永远不会完成安装,也永远不会提供任何错误消息或反馈。

iOS 应用程序安装并运行良好。我在 iPhone 上打开 Apple Watch 应用程序,它列出了该应用程序并显示了正确的图标。选择它,“在 Apple Watch 上显示应用程序”开关打开。在它下面写着“正在安装...”。它一直在那里。

我还可以在 Apple Watch 上看到应用程序图标。选择它只会显示旋转轮指示器,就好像它正在尝试加载一样。

根据我在此处、Apple 开发者论坛和网络上找到的其他建议,我尝试过的事情:

  • 已验证所有 app bundle ID 均正确且匹配。

  • 已验证部署目标为 iOS 8.2。

  • 已验证 WatchKit 应用在模拟器中运行。

  • 已验证我的配置文件是否包含我的 Apple Watch 的 UDID。

  • 已验证我的 Apple Watch 在设备中显示为“已配对手表”。

  • 从我的手机中删除了该应用,然后在重新安装之前重新启动了我的手机、手表和 Macbook。

以上都不起作用。有什么建议吗?

谢谢!

托马斯·艾尔斯沃思

【问题讨论】:

  • 您的手表扩展程序或其任何库是否在 32 位架构中编译?
  • 架构设置为标准。尽管我的 iPhone 应用程序可以,但手表扩展程序不与任何其他库链接。不过都应该是 64 位的。
  • 我遇到了同样的障碍。如果您解决了这个问题,请告诉我!如果我能够安装,我会发布答案。
  • 您是否开始在 Xcode 测试版中开发手表组件?
  • 你能在手表上安装一个空白/虚拟应用吗?

标签: ios watchkit


【解决方案1】:

我也遇到了同样的问题。

@SwampThingTom 的建议不错,但它会改变存档格式,同时大小也会增加。

在我的情况下,问题是 DER 权利不能只运行手表应用程序,移动应用程序很好。

  1. 根据此处This Code Signature is no longer supported when building app on iPhone 12的评论进行更改

  2. 升级到 Xcode 13.1

【讨论】:

    【解决方案2】:

    我遇到了同样的无休止的安装问题,以超时错误结束,感谢这个答案,我终于修复了它:https://stackoverflow.com/a/61636074/2854405

    我不得不:

    1. 取消配对我的 iPhone(从“设备和模拟器”屏幕),
    2. 退出 Xcode
    3. 重新插入我的 iPhone
    4. 出现提示时再次信任 iPhone
    5. 启动 Xcode
    6. 重建

    【讨论】:

      【解决方案3】:

      按“在 Apple Watch 上信任此设备”

      【讨论】:

        【解决方案4】:

        我按照@hunterleebrown的回答看日志,发现WatchOS版本没有更新(即Watch OS版本低于要求的版本)。

        这是屏幕截图 [日志显示(第 4 行):系统版本低于为 bundle 指定的最低 OS 版本...]:

        然后我去了iPhone的手表应用-->常规设置-->软件更新,发现手表操作系统没有更新(这很明显)。然后我下载了更新并安装了它。然后就成功了!

        注意:我也尝试退出 XCode,重新启动 iPhone 和 Watch,但对我不起作用。

        【讨论】:

          【解决方案5】:

          就我而言,我断开了 iPhone 和 Mac,然后通过数据线重新连接它们。然后我的手表上出现了一些选择,同意或不同意,同意它。之后,Xcode 开始为 watchOS 2.1 安装符号:

          完成后,您可以在 Library->Developer->Xcode->watchOS DeviceSupport->Watch1,1 2.1 (13S661)->Symbols 中查看它

          然后我断开手表和 iPhone 的连接,然后重新连接。现在我可以在手表上安装 WatchKit 应用了。

          【讨论】:

            【解决方案6】:

            我遇到了同样的问题,但对我来说,实际上 Apple Watch 运行的 WatchOS 版本低于我在 XCode 中的版本。我看不到关于这个的运行时警告(它只是默默地失败了),但是当在 XCode 中选择 WatchKit 方案并连接设备时,有一个关于版本要求的小警告。

            【讨论】:

              【解决方案7】:

              以下是适用于 iOS 8.3 和 Watch OS 1.0.1 的方法:

              1. 确保您的应用已完成在 iPhone 上的安装。
              2. 按住主屏幕按钮和唤醒/睡眠按钮重新启动 iPhone。
              3. 在您的 iPhone 上启动 TestFlight 应用程序。
              4. 留在 TestFlight 中,转到应用的详细信息页面并将 Apple Watch 上的安装切换到打开位置。
              5. 按 iPhone 上的 Home 按钮退出 TestFlight 应用。
              6. 按下手表上的数字表冠进入主屏幕。您的 Watch 应用的图标应该会出现并开始安装。

              【讨论】:

                【解决方案8】:

                我发现它对于阅读 iPhone 控制台日志非常有用。 (不要与崩溃日志混淆)。

                使用 Xcode --> Window --> Devices -- 选择您插入的 iPhone,并确保日志屏幕左下箭头向下。

                在我的情况下,我的配置文件授权无效,已通过 Apple Dev 门户更正,并重新下载配置文件 - 在确保在 WatchKit 应用程序功能中正确设置授权之后。

                【讨论】:

                  【解决方案9】:

                  是的,我也有这个问题。

                  我删除了 Xcode Beta(和 .dmg),再次下载并安装了它。

                  别再有这个问题了。

                  【讨论】:

                    【解决方案10】:

                    您是否在 WatchKit 应用的 Info.plist 中添加了自定义条目 这是不允许的,它将无法通过验证,只会坐在安装... 查看设备控制台日志以获取相关信息

                    【讨论】:

                      【解决方案11】:

                      就我而言,我在选择 WatchApp 目标来创建 AdHoc 时解决了这个问题。

                      因此,例如,项目中有三个目标:

                      • 演示;
                      • 演示 WatchKit 应用;
                      • 演示 WatchKit 扩展;

                      如果使用 Demo 目标创建 AdHoc,您将获得无限安装。 如果使用 Demo WatchKit App 目标创建 AdHoc,问题就消失了。

                      【讨论】:

                        【解决方案12】:

                        检查 Info.plist 文件。以我的经验,如果那里添加了不应该存在的东西,它会导致这种行为。我添加了 NSLocationWhenInUseUsageDescription 并导致了同样的问题。

                        【讨论】:

                        • 我也面临同样的问题,当我在我的 watchkit 扩展 info.plist 中添加 FlurryAPIKey 时,它从未安装过,有什么解决方法吗?我按照 flurry.com 网站上的说明进行操作 developer.yahoo.com/flurry/docs/analytics/gettingstarted/…
                        • 可能会在未来的 Xcode 版本中得到解决。尝试使用最新的 Xcode 版本。我最终从 plist 文件中删除了密钥。
                        • +1 用于检查 Info.plist。我打算将“电话”添加为我的 iPhone 应用程序所需的设备功能,但我不小心将它添加到我的手表扩展程序的 info.plist 中。
                        【解决方案13】:

                        确保您的应用支持 64 位,否则它无法在 Watch 上运行,只能在那里旋转。

                        【讨论】:

                          【解决方案14】:

                          一位在今日美国 iOS 团队(包括 Apple Watch 应用程序)工作的朋友建议我转到 WatchKit 应用程序目标的项目设置,并将“跳过安装”设置为 NO。果然,这样做之后,我就可以安装了。

                          【讨论】:

                          • 如果我在 Apple Watch 应用上将“跳过安装”设置为“否”,当我尝试存档我的项目时,我没有获得 iOS 应用存档,它会进入“其他项目”部分并且提交给 Apple、验证等选项被禁用。
                          • 同样的事情发生在我身上。这似乎不是一个可行的选择。
                          【解决方案15】:

                          在非 beta Xcode 中从头开始创建一个新项目并将我的资产和代码复制到新项目中后,我也遇到了这个错误,我安装了它。我遇到了同样的问题,并尝试了人们在其他帖子中建议的所有内容,但没有成功,包括您上面列出的所有内容。

                          显然,我为 WatchKit 应用程序创建的测试版 Xcode 中存储项目的方式与项目的存储方式不兼容。

                          【讨论】:

                          • 您能否对项目进行比较以查看实际更改的内容?
                          【解决方案16】:

                          您也可以尝试通过长按图标来删除手表上的手表应用,然后您应该会在 3rd 方应用上获得带有 X 的傻笑 UI。然后,您可以删除手表应用并重新尝试安装。

                          【讨论】:

                            【解决方案17】:

                            我发现了一个类似的问题,因为我的故事板引用了我后来删除的图像(我不再实际使用它了)。如您所见,这给出了在模拟器上运行正常但没有完全部署在硬件上的症状。要排除这个潜在的问题,请检查您的 Apple Watch 故事板上的每个图像视图,并注意针对图像视图条目的感叹号。

                            【讨论】:

                              猜你喜欢
                              • 1970-01-01
                              • 1970-01-01
                              • 1970-01-01
                              • 2020-08-21
                              • 2016-05-01
                              • 2015-10-30
                              • 2015-01-27
                              • 1970-01-01
                              • 1970-01-01
                              相关资源
                              最近更新 更多