是否有任何项目桥接Python和Dalvik在同一地址空间?

是一种以一种语言创建的对象可以被注册为另一语言的侦听器,反之亦然?

-

p> python可能是cpython或pypy;

dalvik可以是完整的Android应用程序框架,或者只有Dalvik虚拟机,或在最坏的情况下,甚至可以是非Dalvik JVM;

桥可以用Python / CFFI,Python / JNI,本机C / C ++代码,甚至Java写入。

脚本环境,据我所知,不做我想要的。

如果在缺少Python - Dalvik桥的情况下,我将采用全功能的C / C ++基于C / C ++ - Dalvik Bridge作为最后的答案。然后在C / C ++ LAND中实例化一个对象时需要一个示例,该对象可以在运行时将其作为有效侦听器提交给某些Android API,包括安全注意事项。

有帮助吗?

解决方案

(根据我的原始评论)

你知道 pyjnius ?它由(例如)kivy python-ford-android项目用于与Java类进行交互,包括管理类似于意图侦听的内容。如果这在技术上是不合适的,我深表歉意,我对这个区域不够了解。

作为一个次要参考, listener示例在Python中实现意图侦听器界面,并使用pyjnius使用Android运行时注册。

超简单的例子,调用Java。

>>> from jnius import autoclass
>>> autoclass('java.lang.System').out.println('Hello world')
Hello world
.

其他提示

实际上存在一个名为Android的模块在Python中。它可以在Android系统上做得很多。您可以在此处下载: https://pypi.python.org/pypi/python-android

还有一个Python / Java桥,也支持Dalvik处理。以下是您可以获得软件的地方: https:///bitbucket.org/reasonspace/reasonspace/src

这两个都应为界面接口Python和Android系统提供一种好方法。如果您希望您也可能会让它们读写文件来发送消息或创建某种类似的通信方式,但上述项目是更好的方法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top