49

Apple 是否接受 Python 应用程序在新的 Mac App Store 上分发?

如果是这样,应用程序应该如何打包?py2app 够用吗?还有什么?

4

6 回答 6

56

我打包了 Pennywise,它可以在 Mac App Store 上找到。它基于 Virgil 的 moneyGuru,它使用 Python、PyObjC 和 py2app。

您必须按照Apple 的流程准备提交到 Mac App Store 的应用程序。最重要的是,您需要将正确的键添加到您的 Info.plist,并删除任何自动更新机制,例如 Sparkle。这不是严格要求的,但您可能还想实施收据检查。使用 Xcode 将使提交过程变得更加容易。您可以查看moneyGuru 源代码,了解如何使用 Xcode 作为构建过程的最后部分的示例。

Py2app 在 bundle 中嵌入了 Python 框架的副本,所以我不知道 Apple 是否会批准只链接到系统框架的应用程序。虽然主二进制文件不支持 PPC,但 Apple 似乎并未检查嵌入式框架中二进制文件的架构。

最后一个警告:我不推荐这个过程来编写新的应用程序。使用 Python、PyObjC 和 py2app 严重地使构建过程复杂化并引入了额外的依赖项。

于 2011-02-16T12:20:31.460 回答
9

我知道这是可能的,因为我知道应用商店中至少有一个基于 Python 的应用程序(“Pennywise”,它基于我自己的应用程序 moneyGuru,它使用 Python + PyObjc + py2app)。我自己没有做,所以我不确定细节。

于 2011-02-14T14:40:41.343 回答
6

我写了一篇综合文章,解释了如何构建 Python 应用程序并将其提交到 Mac App Store。它包括我已成功提交的准系统示例应用程序的源代码和构建脚本。

于 2014-06-25T07:21:06.750 回答
5

是的,只要您遵守全套批准指南,这是可能的。例如,这意味着必须将 python 解释器捆绑到您的应用程序中。

有关要求的完整列表,请参见此处:

https://developer.apple.com/appstore/mac/resources/approval/guidelines.html

于 2011-02-09T01:04:07.953 回答
3

这是很有可能。我的应用程序目前列出:

http://itunes.apple.com/us/app/quickwho/id419483981?mt=12&ls=1#

与 py2app 捆绑在一起,不用担心。

于 2011-10-29T03:30:04.120 回答
1

Apple 为带有 Xcode 的 Python 提供了 Build Applet 工具,因此它应该得到 App Store 的支持。MacOS X 10.6.6 包括 Python 2.5 和 2.6 作为默认安装的一部分,您可以指定/usr/bin/python2.5/usr/lib/python2.5.

于 2011-02-11T16:56:03.140 回答