Apple是否接受Python应用程序在新的Mac App Store上发布?
如果是这样,应该如何打包应用程序? py2app足够吗?还有别的吗?
答案 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)
答案 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
。