是否可以在Mac App Store上部署Python应用程序?

时间:2011-02-09 00:45:27

标签: python macos app-store py2app

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

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

6 个答案:

答案 0 :(得分:55)

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

您必须关注Apple's process for preparing an application for submission to the Mac App Store。最重要的是,您需要将正确的密钥添加到Info.plist中,并删除任何自动更新机制,例如,火花。这不是严格要求的,但您可能也想要implement receipt checking。使用Xcode将使提交过程更加容易。您可以查看the moneyGuru source code以获取如何使用Xcode作为构建过程的最后部分的示例。

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

最后一点需要注意:我不建议使用此过程来编写新的应用程序。使用Python,PyObjC和py2app会严重地使构建过程复杂化并引入其他依赖项。

答案 1 :(得分:9)

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

答案 2 :(得分:6)

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

答案 3 :(得分:5)

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

请在此处查看完整的要求列表:

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

答案 4 :(得分:3)

很有可能。我的应用目前已列出:

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

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

答案 5 :(得分:1)

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