有没有可能使用Python同时为iOS和Android编写跨平台应用
e4eetjau1#
一个选项是kivy:一个很酷的跨平台Python框架,适用于Android,Win7,Linux,MacOSX和iOS。更新:kivy项目每天都在增长,现在也支持Raspberry Pi
q7solyqu2#
对于Android,Google提供了一个名为ASE(Android脚本环境)的东西,它允许脚本语言(包括Python)在Android上运行。更多详情here对于iOS来说,这可能要复杂得多(我建议查看最新版本的iOS SDK协议,以检查当前的法律状况--苹果倾向于定期允许和禁止此类应用程序)。对于技术部分,你可能需要在Python和Objective C之间建立接口,并使用一些魔法来静态链接Python需要的所有库;完整的详细信息可在here上获得。iOS Python开发的另一种方法是将Python解释器嵌入到应用程序中,并使用它分发Python脚本(以便很好地遵守Apple规则)。在这种情况下,你的Python应用程序将是一个Python解释器,它与你的脚本打包在一起并自动运行。第二种选择是使用Kivy框架(kivy.org)-这是一个用Python编写触摸友好应用程序并将其打包用于不同平台的框架。它支持Android已经有一段时间了,最近又增加了对iOS的支持
6pp0gazn3#
对于编写GUI应用程序,您可以使用Toga库,然后将其与briefcase打包到Android和/或iOS应用程序(或Windows,Linux,macOS等)中。
**注:**项目仍处于alpha状态,但正在快速开发中。
9w11ddsr4#
正如@piertoni所提到的,BeeWare使原生iOS和Android应用程序能够用Python编写。
06odsfpq5#
您可以尝试合并brython和cordova。Brython wiki描述了how to write an Android app using Brython,它可能也提供了使用Cordova执行此操作的必要信息。我还没有测试过,但听起来很有希望。但是,您应该知道,由于其性质,Brython无法支持x86编译的软件包,例如OpenCV(参见例如here)。另一方面,如果你对JavaScript / HTML5有一点了解,你可以使用WebView原生函数,例如。http://www.brython.info/gallery/three.html。
ztmd8pv56#
有FireMonkey (FMX)FMX是一个使用Python开发跨平台应用程序的相当新的框架,但我可以诚实地说,它是目前可用的最好的框架!它比所有其他的GUI Python框架都要好。使用FMX,您可以使用Windows、MacOS、Android和Linux的单一代码库进行开发。iOS尚未支持,但计划在不久的将来。我认为FMX值得关注。
6条答案
按热度按时间e4eetjau1#
一个选项是kivy:一个很酷的跨平台Python框架,适用于Android,Win7,Linux,MacOSX和iOS。
更新:kivy项目每天都在增长,现在也支持Raspberry Pi
q7solyqu2#
对于Android,Google提供了一个名为ASE(Android脚本环境)的东西,它允许脚本语言(包括Python)在Android上运行。更多详情here
对于iOS来说,这可能要复杂得多(我建议查看最新版本的iOS SDK协议,以检查当前的法律状况--苹果倾向于定期允许和禁止此类应用程序)。对于技术部分,你可能需要在Python和Objective C之间建立接口,并使用一些魔法来静态链接Python需要的所有库;完整的详细信息可在here上获得。iOS Python开发的另一种方法是将Python解释器嵌入到应用程序中,并使用它分发Python脚本(以便很好地遵守Apple规则)。在这种情况下,你的Python应用程序将是一个Python解释器,它与你的脚本打包在一起并自动运行。
第二种选择是使用Kivy框架(kivy.org)-这是一个用Python编写触摸友好应用程序并将其打包用于不同平台的框架。它支持Android已经有一段时间了,最近又增加了对iOS的支持
6pp0gazn3#
对于编写GUI应用程序,您可以使用Toga库,然后将其与briefcase打包到Android和/或iOS应用程序(或Windows,Linux,macOS等)中。
**注:**项目仍处于alpha状态,但正在快速开发中。
9w11ddsr4#
正如@piertoni所提到的,BeeWare使原生iOS和Android应用程序能够用Python编写。
06odsfpq5#
您可以尝试合并brython和cordova。Brython wiki描述了how to write an Android app using Brython,它可能也提供了使用Cordova执行此操作的必要信息。我还没有测试过,但听起来很有希望。但是,您应该知道,由于其性质,Brython无法支持x86编译的软件包,例如OpenCV(参见例如here)。另一方面,如果你对JavaScript / HTML5有一点了解,你可以使用WebView原生函数,例如。http://www.brython.info/gallery/three.html。
ztmd8pv56#
有FireMonkey (FMX)
FMX是一个使用Python开发跨平台应用程序的相当新的框架,但我可以诚实地说,它是目前可用的最好的框架!
它比所有其他的GUI Python框架都要好。使用FMX,您可以使用Windows、MacOS、Android和Linux的单一代码库进行开发。
iOS尚未支持,但计划在不久的将来。
我认为FMX值得关注。