【问题标题】:WatchKit Extension Provisioning Profile?WatchKit 扩展配置文件?
【发布时间】:2015-04-10 05:04:09
【问题描述】:

我正在尝试将我的 iOS 应用程序发送到 App Store。它编译良好并安装到我的测试设备上,没有任何错误甚至警告。我有一个 Apple Watch 应用程序可以配合它,但它似乎给我带来了问题。当我创建应用程序的存档时,我收到以下 5 个警告:

[App Name] WatchKit Extension

warning: skipping copy phase strip, binary is code signed: /Users/***/Library/Developer/Xcode/DerivedData/***/Build/Intermediates/ArchiveIntermediates/***/IntermediateBuildFilesPath/UninstalledProducts/*** Watch App.app/_WatchKitStub/WK

warning: skipping copy phase strip, binary is code signed: /Users/***/Library/Developer/Xcode/DerivedData/***/Build/Intermediates/ArchiveIntermediates/***/IntermediateBuildFilesPath/UninstalledProducts/*** Watch App.app/*** Watch App


[App Name]

warning: skipping copy phase strip, binary is code signed: /Users/***/Library/Developer/Xcode/DerivedData/***/Build/Intermediates/ArchiveIntermediates/***/IntermediateBuildFilesPath/UninstalledProducts/*** WatchKit Extension.appex/*** Watch App.app/_WatchKitStub/WK

warning: skipping copy phase strip, binary is code signed: /Users/***/Library/Developer/Xcode/DerivedData/***/Build/Intermediates/ArchiveIntermediates/***/IntermediateBuildFilesPath/UninstalledProducts/*** WatchKit Extension.appex/*** Watch App.app/*** Watch App

warning: skipping copy phase strip, binary is code signed: /Users/***/Library/Developer/Xcode/DerivedData/***/Build/Intermediates/ArchiveIntermediates/***/IntermediateBuildFilesPath/UninstalledProducts/*** WatchKit Extension.appex/*** WatchKit Extension

然后它继续出现这个错误:

还有其他人遇到这些问题吗?任何帮助将不胜感激!

【问题讨论】:

  • 仅供参考 - 我用星号掩盖了上面的任何个人信息并剪掉了任何名字。感谢您的理解!
  • 您是否为手表扩展设置了应用商店配置文件?
  • @RhythmicFistman 我有一个用于应用程序(显然:]),我为 WatchKit 应用程序设置了一个。我以为我需要一个扩展,但是当我从 Xcode 复制扩展的捆绑 ID 并将其粘贴到新的 prov 中时。开发者门户中的个人资料,它说这是一个无效的名称。我认为它可能不需要任何以 .watchkitextension 结尾的东西。我错了吗?如果是这种情况,那么我必须联系 Apple,因为就我而言,捆绑 ID 必须与 App Bundle ID 相似(相同前缀)。
  • this answer我昨天写的

标签: ios provisioning-profile watchkit apple-watch xcode-6.2


【解决方案1】:

我在创建 WatchKit 应用时遇到了这两个问题。

(1) 对于您的第一个问题:警告:跳过复制阶段条。

我在这里找到了解决方案:

Warning during archive App with iOS 8 Extension in Xcode 6

这里:

Xcode 6 Archiving and get a warning "Skipping copy phase strip ,binary is code signed" when add "share extension" to target

具体来说,这里是我用来解决问题的步骤:

  1. 启动 Xcode 并打开您的项目。

  2. 选择左上角的蓝色项目图标。

  3. 在包含以下部分的第二列中:项目和目标, 在 TARGETS 部分下选择您的主要目标。

  4. 选择“构建设置”选项卡。

  5. 向下滚动到“部署”部分。

  6. 找到并展开名为“复制期间剥离调试符号”的部分

  7. 找到名为“Release”的行。

  8. 将值从“是”更改为“否”。

(2) 对于您的第二个问题:未能找到或生成匹配的签名资产 解决方案在这里:

No matching provisioning profiles found for WatchKit extension when submitting to App Store

这里:

Submit WatchKit Provisioning Error

在包含 WatchKit 扩展之前,我必须重新生成用于提交整个应用程序的“分发”配置文件。具体来说,这些步骤解决了我的问题:

我登录到 developer.apple.com,选择“证书、标识符和配置文件”。

  1. 在证书 ID 和配置文件网站 > 配置配置文件页面上,单击 App Store 配置文件。
  2. 点击“编辑”
  3. 点击“生成”

【讨论】:

  • 因此,在我让您的第二步开始工作之前,您列出的关于“复制期间剥离调试符号”的第一步不起作用。我不知道为什么,它们似乎有些无关。第二步是 Xcode 在我不知道的情况下(我的错)为我生成了一个配置文件,并给它起了一个不寻常的名字(这就是为什么我每次进入开发门户时都会错过它的原因)。当我仔细看时,我看到了它并用我想要的名字重新创建了它。它起作用了,它也使第一步起作用了!谢谢!
  • 不客气!我没想到第二步会帮助解决第一步,但我很高兴它现在对你有用。
【解决方案2】:

我有一个可行的解决方案(对我来说)

首先:只需确保您在 (Watch Kit App) 和 (Watch Kit Extension) 上启用了您在应用中使用的所有服务,

例如,如果您在原生应用上使用了 iCloud,即使您的手表应用上没有使用 iCloud,您也应该在 (Watch Kit App) 和 (Watch Kit Extension) 上启用 iCloud。

应用组也是如此。

第二:确保(Watch Kit App)和(Watch Kit Extension)上的bundle标识符必须扩展原生应用,

例如,如果应用程序 com.company.myapp(Watch Kit 应用程序)标识符应为:com.company.myapp.watchkitapp 并且(Watch Kit Extension)应为:com.company.myapp.watchkitextension

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多