简体   繁体   中英

Is it possible to use Python to write cross-platform apps for both iOS and Android?

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

An option is kivy : a cool cross platform Python framework which works for Android, Win7, Linux, MacOSX and iOS.

Update: kivy project is growing daily, now supports also Raspberry Pi

For Android Google provides something called ASE (Android Scripting Environment) which allows scripting languages (Python included) to run on Android. More details here

For iOS, it might be quite a bit more complicated (and I'd advise to check the latest version of iOS SDK agreement to check the current state of the law - apple tends to allow & disallow such apps periodically). For the technical part you might need to interface between Python & Objective C as well as do some wizardry to statically link all the libraries Python requires; full details are available here . Another approach for iOS Python development would be to embed a Python interpreter into you app and distribute your Python script with it (so to play nicely with Apple rules). In this case your Python application would be a Python interpreter which is packaged with your script and runs it automatically.

Second option is to use Kivy framework(kivy.org) - it's a framework to write touch-friendly applications in Python and package them for different platforms. It's had Android support for a while, and recently added iOS support

For writing a GUI applicaion you can use the Toga library,then package it with briefcase into a Android and/or iOS app (or Windows, Linux, macOS etc).

Note: the project is still in alpha state but under rapid development.

You can try and combine and . The Brython wiki describes how to write an Android app using Brython , which might provide the necessary information to do this also using Cordova. I haven't tested this yet, but it sounds promising. You should however be aware that due to its nature, Brython cannot support x86-compiled packages such as OpenCV (see eg here ). On the other hand, if you know a bit about JavaScript / HTML5, you can use the WebView native functions, eg http://www.brython.info/gallery/three.html .

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM