是否有任何项目在同一地址空间中桥接 Python 和 Dalvik?
也就是说,用一种语言创建的对象可以在另一种语言中注册为监听器,反之亦然?
--
Python 可以是 CPython 或 PyPy;
Dalvik 可以是完整的 Android 应用程序框架,或者只是 Dalvik 虚拟机,或者在最坏的情况下,甚至可以是非 Dalvik JVM;
Bridge 可以用 Python/cffi、Python/jni、本地 C/C++ 代码甚至 java 编写。
据我所知,脚本环境无法满足我的要求。
如果完全没有 Python--Dalvik 桥,我将采用全功能的基于 C/C++ 的 C/C++--Dalvik 桥作为最后的有效答案。然后需要一个在 C/C++ 领域实例化 on 对象的示例,该对象可以在运行时作为某些 Android API 的有效监听器提交,包括安全考虑。
最佳答案
(根据我原来的评论)
你知道pyjnius吗? ?它被(例如)kivy python-for-android 项目用来与 java 类交互,包括管理诸如 Intent 监听之类的东西。如果这在技术上不合适,我深表歉意,我对这个领域了解不够。
作为次要引用,listener example在 Python 中实现 Intent 监听器接口(interface),并使用 pyjnius
将其注册到 Android 运行时。
super 简单的示例,调用 java。
>>> from jnius import autoclass
>>> autoclass('java.lang.System').out.println('Hello world')
Hello world
关于android - Python 和 Dalvik 或 AAF 之间的本地桥梁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20045784/