在本地部署 Swift OS X 应用程序?

Posted

技术标签:

【中文标题】在本地部署 Swift OS X 应用程序?【英文标题】:Deploy a Swift OS X app locally? 【发布时间】:2016-02-18 16:09:08 【问题描述】:

我对编程并不陌生,但我对 Swift 很陌生。我开发了一个小应用程序,我无意分发,我只是想自己使用它。在 XCode 中一切正常,现在我想在本地部署该应用程序。如何在我的机器上运行我的应用程序而不需要同时运行 XCode?我只想在我的应用程序文件夹中查看我的应用程序并在需要时运行它。 XCode 是否将构建文件放在我可以访问它们并在 XCode 之外使用的地方?

【问题讨论】:

【参考方案1】:

产品菜单上有一个存档选项。选择它以创建您的应用程序的存档。

Xcode 应该会自动打开管理器窗口,并选择您的应用程序存档。

您会在右侧看到一个名为 Upload to App Store 的蓝色大按钮,其下方有两个较小的按钮。你想要的那个叫做 Export... 按下它,你会得到一个窗格,为你提供各种导出选项和不同类型的签名。

底部选项会创建一个未签名的.app 文件,您可以将其放入您的Applications 目录中。

NB 正如 Eric D 所说,您可以将应用程序拖出产品目录,但除非您编辑方案,否则将为您提供优化较少且激活断言的调试版本。

Xcode 11.2 更新

正如Bell B. Cooper 指出的那样,过程略有改变。现在,当您归档应用程序时,您会看到一个列出应用程序的窗口和一个蓝色的“分发”大按钮。按下此按钮,您会看到一个对话框,为您提供各种选项。您选择哪一个取决于您要对可执行文件执行的操作。使用 Catalina,除非它只是供您自己使用,否则您可能想要选择涉及签署应用程序的选项之一。

【讨论】:

有没有办法为那些没有加入 Apple Developer Program 的人导出这个档案? 在 Xcode 11 中,布局发生了一些变化。您现在需要单击“分发”,这是一个蓝色的大按钮,以前说“上传到 App Store”。这将打开一个包含多个选项的对话框 - 最后一个选项称为“复制应用程序”,此选项将应用程序的副本导出到您选择的目录。 @BelleB.Cooper 是的,这个答案是 3.5 岁。我添加了一个更新。【参考方案2】:

编辑:虽然此答案仍然有效,但它针对旧 Xcode 版本并使用您的可执行文件的调试版本。对于最近的 Xcode 版本,以及使用您的可执行文件的发布版本,请参阅JeremyP's answer。

每次使用当前方案构建 OS X 应用程序时,Xcode 都会自动使用相关的应用程序包填充“Products”文件夹。

您可以在项目导航器中找到此文件夹:

Xcode > 项目导航器 > “产品”文件夹

您的 .app 在那里,可以使用和/或复制到 /Applications 文件夹。

【讨论】:

请注意,这使用的是调试版本的可执行文件。如果您想要发布版本,请按照 JeremyP 的回答。

以上是关于在本地部署 Swift OS X 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

Swift 3 OS X 应用程序在启动时启动

Swift 中的 OS X 应用程序视图管理

使用 Swift 在 OS X 应用程序中打开新窗口

pathForResource 在 Mac OS X 控制台应用程序中返回 nil — Swift

防止事件监视器 OS X 中出现错误“放克”声音

viewDidLoad 函数未在 Xcode 6.2 swift 应用程序中调用,但在 OS X 上的 Xcode 6.4 swift 应用程序中调用