从 Swift 学习资源运行示例代码是否真的需要注册 Mac 开发人员计划?



...还是我做错了什么?(是的。我曾经是。请随时跳到"更新"部分。我已经阅读了几篇快速入门文章,并准备深入了解"惊人的新语言",所以我访问了 https://developer.apple.com/swift/resources/以获得一些漂亮的教程,我得到了什么?我下载了一个Lister XCode项目,打开它,将构建目标切换到My Mac,开始构建并...我得到的只是几个窗口,告诉我要花99美元成为一名开发人员。

我对所有这些锁定的Mac/OS X/任何生态系统都很陌生,而且,从大多数自由和痛苦的Linux来到这里,我发现这些小东西真的很令人反感,所以我希望这个问题真的在我的脑海中,我可以运行模范代码而无需支付99美元

如果这是一个题外话,请指出我正确的方向(除了你认为我应该爬到某个黑暗的角落里哭泣现实生活中的事情有多难的情况(。

更新。这个问题似乎有一个圆满的结局。正如你们中的一些人在评论部分和答案中提到的,我应该禁用项目的代码签名功能,以便构建和运行它。当我确实禁用了我感兴趣的子项目(ListerOSX 及其依赖项(的签名过程时,混乱都是我的,但事实证明,为了成功编译和启动项目,还应该禁用所有子项目的签名(目标,等等(。例如,如果您要启动ListerOSX,请确保您已禁用Lister Watch应用程序的签名等。

鉴于这对我来说至少有点微妙,你可能会说"Mac开发新手",我仍然要求你不要关闭这个问题,而是保持开放:如果其他人偶然遇到同样的问题,我的故事实际上可能会有所帮助。

最新版本的Mac OS X将不允许软件运行,除非它由开发人员签名,或者用户在技术上足够精通以绕过网守(这不是很难。只需右键单击该应用程序并选择"打开",然后未签名的软件将运行(。

这是Apple阻止恶意软件分发的尝试。如果未对恶意软件进行签名,则可能陷入恶意软件的用户将不知道如何使其运行。如果恶意软件被签名,那么苹果可以将签名(和相关联系方式(传递给联邦调查局,联邦调查局将试图组织一个漫长的监禁。

对于您来说,作为开发人员,这意味着您需要获得证书或接受您的软件只能在关闭网守的情况下运行。

普通的Mac开发人员计划是每年99美元,其中包括一大堆东西,使其物有所值。但是,有一个免费的"开发者 ID"会员级别,仅允许您对应用进行签名。

因此,您有三种选择:

  • 注册一个免费的开发人员帐户并使用该帐户签名
  • 注册付费帐户
  • 不要对代码进行签名并接受它不会通过网守。 只需在"发布"版本中禁用代码签名即可。默认情况下,它在"调试"版本中已被禁用。

在项目设置中的所有目标上禁用代码签名。使用官方 Apple 证书进行代码签名需要付费帐户。您仍然可以对代码进行签名以表明自己是作者,但它不会自动通过 Gatekeeper,并且您将无法直接从 Xcode 签名。

最新更新