我们正在开发一个S60版本,这个平台有一个不错的Python API。。
然而,Android上的Python并没有什么官方规定,但既然Jython存在,有没有办法让蛇和机器人一起工作??
我们正在开发一个S60版本,这个平台有一个不错的Python API。。
然而,Android上的Python并没有什么官方规定,但既然Jython存在,有没有办法让蛇和机器人一起工作??
当前回答
从Python for android站点:
Python for android是一个创建自己的Python发行版的项目,其中包含所需的模块,并创建包含Python、libs和应用程序的apk。
其他回答
如果您正在寻找3.4.2或更新版本(截至本文撰写时为3.9.6),另一个选择是GitHub上的这个存档。
Python 3 Android 3.4.2或Python 3 Android 3.9.6
我相信原始存档支持Python 3.4.2,最新的GRRedwings分支支持3.9.6和NDK的22b版本。较旧的分支支持其他版本,但使用docker编译起来不那么容易。
旧版本只需克隆存档,运行make,即可获得.so或.a
较新的版本遵循ReadMe,但它使用docker进行一致的构建。
我目前使用它在android设备上运行原始Python。通过对构建文件进行一些修改,您还可以使x86和armeabi 64位
交叉编译和Ignifuga
我的博客有针对Android的Python 2.7.2交叉编译的说明和补丁。
我还开源了我的2D游戏引擎Ignifuga。它基于Python/SDL,并为Android进行交叉编译。即使你不在游戏中使用它,你也可以从代码或生成器实用程序中获得有用的想法(以Tim的名字命名为Schafer……你知道是谁)。
以下是python官方网站中列出的一些工具
playstore中有一个名为QPython3的应用程序,可用于编辑和运行python脚本。
Playstore链接
另一个名为Termux的应用程序,您可以在其中使用命令安装python
pkg install python
Playstore链接
如果您想开发应用程序,可以使用Python Android脚本层(SL4A)。
Android脚本层SL4A是一个开源应用程序,它允许用一系列解释语言编写的程序在Android上运行。它还提供了一个高级API,允许这些程序与Android设备交互,使访问传感器数据、发送短信、渲染用户界面等操作变得容易。
您还可以检查Android的PySide,这实际上是Qt4的Python绑定。
有一个名为PyMob的平台,应用程序可以纯用Python编写,编译器工具流(PyMob)将其转换为各种平台的本地源代码。
还要检查android的python
python for android是一个开源构建工具,可以让您将python代码打包到独立的android APK中。这些应用程序可以像任何其他Android应用程序一样传递、安装或上传到Play商店等市场。该工具最初是为Kivy跨平台图形框架开发的,但现在支持多个引导程序,并且可以轻松扩展为打包其他类型的Android Python应用程序。
试试ChaquopyAndroid的Python SDK
添加。。。BeeWare公司
BeeWare允许您用Python编写应用程序并在多个平台上发布。无需使用多种编程语言重写应用程序。这意味着构建工具、环境、兼容性等没有问题。
Kivy
我想补充@JohnMudd写的关于Kivy的内容。他描述的情况已经过去多年了,Kivy已经发生了实质性的变化。
在我看来,Kivy最大的卖点是它的跨平台兼容性。您可以使用任何桌面环境(Windows/*nix等)对所有内容进行编码和测试,然后将应用程序打包到一系列不同的平台上,包括Android、iOS、MacOS和Windows(尽管应用程序通常缺乏原生外观)。
使用Kivy自己的KV语言,您可以轻松地编写和构建GUI界面(它与JavaXML类似,但与TextView等不同,KV有自己的ui.widget用于类似的翻译),我认为这很容易采用。
目前,android的Buildozer和python是构建和打包应用程序的最推荐工具。我已经尝试了这两种方法,可以肯定地说,它们让用Python构建Android应用程序变得轻而易举。他们的指南也有很好的记录。
iOS是Kivy的另一大卖点。您可以使用相同的代码库,通过kivy ios Homebrew工具进行少量更改,尽管在设备上运行之前,构建需要Xcode(AFAIK Xcode中的ios模拟器目前不适用于x86架构构建)。还有一些依赖性问题,必须手动编译并在Xcode中摆弄才能成功构建,但这些问题不太难解决,Kivy Google Group的员工也很有帮助。
尽管如此,拥有良好Python知识的用户应该可以快速掌握基本知识。
如果您将Kivy用于更严肃的项目,您可能会发现现有模块不令人满意。但也有一些可行的解决方案。使用(正在进行中的)pyjnius for Android和pyobjus,用户现在可以访问Java/Objective-C类来控制一些本地API。
一种方法是使用Kivy:
用于快速开发应用程序的开源Python库它们利用了创新的用户界面,如多点触摸应用程序。
Kivy在Linux、Windows、OS X、Android和iOS上运行。您可以在所有支持的平台上运行相同的[python]代码。
Kivy Showcase应用程序