【问题标题】:Do Finder Sync Extensions require a provisioning profile?Finder 同步扩展是否需要配置文件?
【发布时间】:2014-11-12 01:58:24
【问题描述】:

OS X 10.10 Yosemite 引入了Finder Sync extensions。我无法将这些集成到现有项目中。我有一个现有的组件,我希望扩展程序能够使用。该组件不通过应用商店分发,General->Settings下的“Identity->Signing”设置为“None”

在构建设置下,我有以下内容:

  • 代码签名身份:开发者 ID 应用程序:
  • 配置文件:无

我阅读了一些关于 distributing apps outside the app store 的信息,但它没有说明任何关于配置文件的信息。

当我使用 Xcode 6.1 beta 2 模板创建 Finder Sync 扩展目标时,它设置为“常规 -> 身份 -> 签名”为无,就像父组件一样。构建设置有以下内容:

  • 代码签名身份:开发者 ID 应用程序:
  • 配置文件:(未设置)

但是,当我构建时,它会显示以下内容:

“未找到匹配的配置文件”

“此产品类型必须使用配置文件构建,但未找到与身份“开发者 ID 应用程序:[团队帐户]”匹配的配置文件。Xcode 可以通过从会员中心下载新的配置文件来解决此问题。”

在构建应用扩展程序时是否有新的配置文件要求?我应该使用其他类型的证书吗?

我在App Extension Programming Guide中发现了这个有趣的sn-p:

要交付 OS X 应用扩展,建议您将包含的应用提交到 App Store,但这不是必需的。

注意:如果您在 Mac App Store 之外分发 OS X 应用扩展,Gatekeeper 会阻止扩展运行,直到用户打开并批准包含的应用。此外,如果您使用开发者 ID 以外的证书进行代码签名,则用户必须明确覆盖 Gatekeeper 才能打开包含的应用程序以使您的扩展程序可用。

Debug, Profile, and Test Your App Extension 部分的另一个相关 sn-p:

注意:您必须对包含的应用及其包含的应用扩展进行代码签名。

Xcode 项目中的所有目标都必须以相同的方式进行代码签名。例如,在测试期间,您可以使用临时代码签名或使用您的开发人员证书,但必须对项目中的所有目标使用相同的方法。要提交到 App Store,请将您的分发证书用于所有目标。

【问题讨论】:

  • 你有什么解决办法吗?
  • 您找到解决方案了吗?我有同样的问题,尝试使用开发人员 ID 证书签署包含应用程序,但扩展坚持使用配置文件进行签名。

标签: objective-c xcode macos code-signing provisioning-profile


【解决方案1】:

我在Apple Dev Forum 中找到了一条对我有用的提示。解决方案是在 App 目标中的 Embed App Extension 构建阶段之前手动退出 App Extension。

【讨论】:

  • 是的!这真的帮助了我。然而,我需要更多的研究来弄清楚被审查的部分背后是什么。这是我使用的代码:/usr/bin/codesign --force --sign "$CODE_SIGN_IDENTITY" --entitlements "${SRCROOT}/Project/Path/To/Your.entitlements" "${TARGET_BUILD_DIR}/ProductName.appex"
【解决方案2】:

我在使用 Xcode 6.1“GM”时遇到了同样的错误消息。就我而言,我正在使用 Today and Share 扩展,但我不知道这是否真的与问题有关。我曾一度尝试删除它们,但仍然出现同样的错误。

无论如何,我最终通过将 Provisioning Profile 设置为“XC: *”来构建它。我不知道为什么,因为它实际上并没有嵌入配置文件。我假设您可以选择任何对应用程序有效的配置文件,但我只使用通配符进行了测试。

打开包含的应用程序并允许它运行后,我的扩展程序确实可以正常工作。

【讨论】:

  • 如果我使用通配符配置文件,代码签名身份将不是“开发人员 ID”,这会导致在构建过程结束时验证代码签名时出现后续错误.我检查了内置的扩展。它确实包含选择的配置文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-04-04
  • 1970-01-01
  • 2014-10-09
  • 2018-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多