在 Mac App Store 之外分发应用程序崩溃并出现代码签名无效错误
Distributing Apps Outside the Mac App Store crash with Code Signature Invalid error
我有一个 Mac 适用于 OS X 10.10 的应用程序,我正在尝试创建一个工作发布版本。
- 不适用于 Mac 应用程序商店“在 Mac 应用程序之外分发应用程序
商店
- 使用 "Developer ID Application" 进行发布代码签名。我的应用程序开发帐户中的内容看起来不错
- 创建了一个 OSX APP ID com.blah.app
- 可以成功创建和验证存档
- sudo spctl --assess --verbose=4 Name.App,看起来不错“Name.App:已接受
source=开发者 ID
- 通过 Apple 阅读 "Distributing Apps Outside the Mac App Store"
- 根据客户要求需要 OS X 10.10
- 通读我能在堆栈溢出中找到的关于此的所有内容
事
- 可以毫不犹豫地构建和发布 iOS,但这是我的
第一个 Mac 应用程序
我 运行 应用程序,在控制台中我看到 "EXC_CRASH (Code Signature Invalid)"
难倒...
网守
Mac 有一个 "gatekeeper" 功能,可以在“系统偏好设置”>“安全和隐私”>“常规”> "Allow apps downloaded from:" 中设置 3 种模式。
您的测试系统设置为哪个?
由于您使用 Developer ID 进行签名,因此需要将其设置为第二个或第三个选项(不仅允许 App Store)。 [第二个选项是新安装机器的默认设置]
为在应用商店外分发而构建
您为提交到应用商店而创建的构建不能被所有人运行使用。需要专门为此构建它。
引用https://developer.apple.com/library/mac/qa/qa1884/_index.html:
[...] use Xcode Organizer > Export > Export a Developer ID-signed Application. Developer ID-signed apps can be run by anyone. However, code that uses technologies only available to Mac App Store apps, such as receipt validation, iCloud, and push notifications, will not work if your app is Developer ID-signed. You might need to temporarily disable those parts of your app if you opt for the Developer ID testing approach
所选功能(红色)中存在未停止构建的错误,在本例中为 "Key chain sharing"。关闭,因为我不需要它,一切都按预期工作
我有一个 Mac 适用于 OS X 10.10 的应用程序,我正在尝试创建一个工作发布版本。
- 不适用于 Mac 应用程序商店“在 Mac 应用程序之外分发应用程序 商店
- 使用 "Developer ID Application" 进行发布代码签名。我的应用程序开发帐户中的内容看起来不错
- 创建了一个 OSX APP ID com.blah.app
- 可以成功创建和验证存档
- sudo spctl --assess --verbose=4 Name.App,看起来不错“Name.App:已接受 source=开发者 ID
- 通过 Apple 阅读 "Distributing Apps Outside the Mac App Store"
- 根据客户要求需要 OS X 10.10
- 通读我能在堆栈溢出中找到的关于此的所有内容 事
- 可以毫不犹豫地构建和发布 iOS,但这是我的 第一个 Mac 应用程序
我 运行 应用程序,在控制台中我看到 "EXC_CRASH (Code Signature Invalid)"
难倒...
网守
Mac 有一个 "gatekeeper" 功能,可以在“系统偏好设置”>“安全和隐私”>“常规”> "Allow apps downloaded from:" 中设置 3 种模式。
您的测试系统设置为哪个?
由于您使用 Developer ID 进行签名,因此需要将其设置为第二个或第三个选项(不仅允许 App Store)。 [第二个选项是新安装机器的默认设置]
为在应用商店外分发而构建
您为提交到应用商店而创建的构建不能被所有人运行使用。需要专门为此构建它。
引用https://developer.apple.com/library/mac/qa/qa1884/_index.html:
[...] use Xcode Organizer > Export > Export a Developer ID-signed Application. Developer ID-signed apps can be run by anyone. However, code that uses technologies only available to Mac App Store apps, such as receipt validation, iCloud, and push notifications, will not work if your app is Developer ID-signed. You might need to temporarily disable those parts of your app if you opt for the Developer ID testing approach
所选功能(红色)中存在未停止构建的错误,在本例中为 "Key chain sharing"。关闭,因为我不需要它,一切都按预期工作