Xcode 成功构建但未能 运行 macOS 应用程序
Xcode successfully builds but fails to run macOS app
我编写了一个使用 CloudKit 的 mac 应用程序,自从我升级到 Sierra 和 XCode 8 后,该应用程序将成功构建,但是 Xcode 单击 "run" 时不会启动应用程序。
如果我进入 Derived Data 文件夹并手动双击我的应用程序以启动它,它会立即崩溃并在错误报告中显示以下内容:
Time Awake Since Boot: 12000 seconds
Time Since Wake: 6500 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (Code Signature Invalid)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace CODESIGNING, Code 0x1
有趣的是,如果我存档应用程序并导出一个 Developer ID 签名的应用程序,导出的构建会成功签名并完美运行。
此外,如果我进入功能选项卡并关闭 iCloud 功能,应用会在 XCode 秒内成功运行 运行。
每当我在 DerivedData 文件夹中的应用程序上 运行 spctl,无论我是否启用或禁用 iCloud,我总是得到这个:
spctl --assess --verbose=4 MyApp.app
MyApp.app: rejected
在 XCode 的“常规”选项卡中,我将其设置为 "Automatically manage signing",据我所知,我的所有证书均有效。
不太确定在这里做什么。我什至尝试过完全禁用 Gatekeeper,但仍然没有成功。
啊啊啊。找到了我的问题的答案,我希望答案也能帮助你。
我的代码签名在开发目标中设置正确,但在测试目标中是 临时签名。一旦我为测试目标设置了配置文件,问题就消失了。
我编写了一个使用 CloudKit 的 mac 应用程序,自从我升级到 Sierra 和 XCode 8 后,该应用程序将成功构建,但是 Xcode 单击 "run" 时不会启动应用程序。
如果我进入 Derived Data 文件夹并手动双击我的应用程序以启动它,它会立即崩溃并在错误报告中显示以下内容:
Time Awake Since Boot: 12000 seconds
Time Since Wake: 6500 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (Code Signature Invalid)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace CODESIGNING, Code 0x1
有趣的是,如果我存档应用程序并导出一个 Developer ID 签名的应用程序,导出的构建会成功签名并完美运行。
此外,如果我进入功能选项卡并关闭 iCloud 功能,应用会在 XCode 秒内成功运行 运行。
每当我在 DerivedData 文件夹中的应用程序上 运行 spctl,无论我是否启用或禁用 iCloud,我总是得到这个:
spctl --assess --verbose=4 MyApp.app
MyApp.app: rejected
在 XCode 的“常规”选项卡中,我将其设置为 "Automatically manage signing",据我所知,我的所有证书均有效。
不太确定在这里做什么。我什至尝试过完全禁用 Gatekeeper,但仍然没有成功。
啊啊啊。找到了我的问题的答案,我希望答案也能帮助你。 我的代码签名在开发目标中设置正确,但在测试目标中是 临时签名。一旦我为测试目标设置了配置文件,问题就消失了。