让 Dbus 的 Java 绑定在 Android 上运行
Posted
技术标签:
【中文标题】让 Dbus 的 Java 绑定在 Android 上运行【英文标题】:Getting Java Binding for Dbus to Run on Android 【发布时间】:2010-12-08 03:35:44 【问题描述】:有没有人成功地在 android 上为 dbus 运行 Java 绑定?所有迹象都表明 dbus 已经作为 Android 操作系统中的一个进程运行,但没有通过 Java 接口为它们提供的官方访问点。提前致谢!
【问题讨论】:
【参考方案1】:你不应该这样做,除非你在谈论你自己的总线和你控制的东西说话。不能保证 dbus 将可用。根据android邮件列表,it's just an implementation detail that dbus is around at all, it's not guaranteed to be there, and might not be there in the future.
【讨论】:
【参考方案2】:您可以尝试使用 freedesktop 项目中的dbus-java。我不知道它是否适用于安卓强。
【讨论】:
感谢您的建议!我已经尝试过了,但它需要 Unix 套接字的 JNI 实现才能运行。这需要将 C 库推送到 Android 上,我不太确定该怎么做。我已经看到推送简单的程序是可能的,但我还没有看到推送完整的库。或者也许我只是没有正确运行 make。 你可以使用 TCP 代替 unix-sockets,然后你就有了纯 Java 库 你需要修改 dbus 库。没有 unix 套接字,没有什么比构建配置选项更好的了。 Android 一直通过 LocalSocket 类在 Java 中支持 Unix 域套接字(至少在某种程度上)。以上是关于让 Dbus 的 Java 绑定在 Android 上运行的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Anaconda 中使用 Python Dbus 绑定