86

是否可以使用 Python 为 iOS 和 Android 编写跨平台应用程序

4

5 回答 5

82

一个选项是kivy:一个很酷的跨平台 Python 框架,适用于 Android、Win7、Linux、MacOSX 和 iOS。

更新:kivy 项目每天都在增长,现在还支持 Raspberry Pi

于 2012-06-12T16:14:41.927 回答
30

对于 Android,Google 提供了一种称为 ASE(Android 脚本环境)的东西,它允许脚本语言(包括 Python)在 Android 上运行。更多细节在这里

对于 iOS,它可能要复杂得多(我建议检查最新版本的 iOS SDK 协议以检查法律的当前状态 - 苹果倾向于定期允许和禁止此类应用程序)。对于技术部分,您可能需要在 Python 和 Objective C 之间进行接口,以及做一些魔法来静态链接 Python 所需的所有库;完整的详细信息可在此处获得。iOS Python 开发的另一种方法是将 Python 解释器嵌入到您的应用程序中并使用它分发您的 Python 脚本(以便与 Apple 规则很好地配合)。在这种情况下,您的 Python 应用程序将是一个 Python 解释器,它与您的脚本一起打包并自动运行。

第二种选择是使用 Kivy 框架(kivy.org)——它是一个用 Python 编写触摸友好型应用程序并将它们打包用于不同平台的框架。它支持 Android 有一段时间了,最​​近增加了 iOS 支持

于 2012-05-19T10:07:35.997 回答
4

要编写 GUI 应用程序,您可以使用Toga库,然后将其与公文包一起打包到 Android 和/或 iOS 应用程序(或 Windows、Linux、macOS 等)中。

注意:该项目仍处于 alpha 状态,但正在快速开发中。

于 2017-05-25T09:00:08.320 回答
2

您可以尝试结合。Brython wiki 描述了如何使用 Brython 编写 Android 应用程序,它可能提供必要的信息来使用 Cordova 执行此操作。我还没有对此进行测试,但听起来很有希望。然而,您应该知道,由于其性质,Brython 不能支持 x86 编译的软件包,例如 OpenCV(参见例如此处)。另一方面,如果您对 JavaScript/HTML5 有所了解,您可以使用 WebView 的原生函数,例如http://www.brython.info/gallery/three.html

于 2018-04-25T08:49:46.940 回答
2

正如@piertoni 所提到的,BeeWare支持使用 Python 编写原生 iOS 和 Android 应用程序。

于 2019-02-08T21:06:48.620 回答