我们正在开发一个S60版本,这个平台有一个不错的Python API。。
然而,Android上的Python并没有什么官方规定,但既然Jython存在,有没有办法让蛇和机器人一起工作??
我们正在开发一个S60版本,这个平台有一个不错的Python API。。
然而,Android上的Python并没有什么官方规定,但既然Jython存在,有没有办法让蛇和机器人一起工作??
当前回答
Android脚本层
SL4A可以随心所欲。您可以从他们的网站轻松地将其直接安装到您的设备上,而不需要root用户。
它支持多种语言。Python是最成熟的。默认情况下,它使用Python 2.6,但有一个3.2端口可以替代。我曾在Galaxy S2上使用过该端口进行各种操作,并且工作正常。
API
SL4A为每种受支持的语言提供了一个android库端口。该库通过单个Android对象提供了与底层Android API的接口。
from android import Android
droid = Android()
droid.ttsSpeak('hello world') # example using the text to speech facade
每种语言都有几乎相同的API。您甚至可以在webview中使用JavaScript API。
let droid = new Android();
droid.ttsSpeak("hello from js");
用户界面
对于用户界面,您有三个选项:
您可以通过应用程序编程接口。这对于确认对话和其他基本用户输入很有用。您还可以从Python脚本内部打开一个Web视图,然后使用HTML5用于用户界面。当您使用Python中的webview时,可以通过在webview和Python进程之间来回发送消息UI将不是原生的,但它仍然是一个很好的选择有有一些对原生Android用户界面的支持,但我不是确定它的效果如何;我只是从来没有用过。
你可以混合选项,这样你就可以在主界面上有一个webview,并且仍然使用本机对话。
QPython公司
有一个名为QPython的第三方项目。它建立在SL4A之上,并加入了一些其他有用的东西。
QPython为您提供了一个更好的UI来管理您的安装,并包括一个小的触摸屏代码编辑器、一个Python外壳和一个用于包管理的PIP外壳。它们还有一个Python 3端口。这两个版本都可以从Play商店免费获得。QPython还将Android项目(包括Kivy)上的Python库捆绑在一起,因此它不仅仅是SL4A。
请注意,QPython仍在开发SL4A的分支(不过,老实说不多)。主要的SL4A项目本身几乎已经死亡。
有用的链接
SL4A项目(现在在GitHub上):https://github.com/damonkohler/sl4aSL4A Python 3端口:https://code.google.com/p/python-for-android/wiki/Python3QPython项目:http://qpython.com学习SL4A(教程):https://www.tutorialspoint.com/sl4a/index.htm
其他回答
是!:Android脚本环境
通过Matt Cutts通过SL4A实现的示例——“这里有一个用六行Python代码编写的条形码扫描仪:
import android
droid = android.Android()
code = droid.scanBarcode()
isbn = int(code['result']['SCAN_RESULT'])
url = "http://books.google.com?q=%d" % isbn
droid.startActivity('android.intent.action.VIEW', url)
交叉编译和Ignifuga
我的博客有针对Android的Python 2.7.2交叉编译的说明和补丁。
我还开源了我的2D游戏引擎Ignifuga。它基于Python/SDL,并为Android进行交叉编译。即使你不在游戏中使用它,你也可以从代码或生成器实用程序中获得有用的想法(以Tim的名字命名为Schafer……你知道是谁)。
从Python for android站点:
Python for android是一个创建自己的Python发行版的项目,其中包含所需的模块,并创建包含Python、libs和应用程序的apk。
以下是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编写应用程序并在多个平台上发布。无需使用多种编程语言重写应用程序。这意味着构建工具、环境、兼容性等没有问题。
作为一名Python爱好者和Android程序员,我很遗憾地说,这不是一条好的道路。有两个问题:
一个问题是,Android开发工具不仅仅是一种编程语言。许多Android图形都包含配置显示的XML文件,类似于HTML。内置的java对象与这个XML布局集成在一起,从逻辑到位图比编写代码要容易得多。
另一个问题是G1(可能还有不久的将来的其他Android设备)没有那么快。200MHz处理器和RAM非常有限。即使在Java中,如果你想让你的应用程序完美流畅,你也必须进行大量的重写,以避免更多的对象创建。Python在移动设备上的运行速度暂时会太慢。