Android Java 和原生进程之间有啥快速简单的 IPC 机制吗?
Posted
技术标签:
【中文标题】Android Java 和原生进程之间有啥快速简单的 IPC 机制吗?【英文标题】:Is there any quick and simple IPC mechanism between Android Java and native processes?Android Java 和原生进程之间有什么快速简单的 IPC 机制吗? 【发布时间】:2014-09-28 09:40:24 【问题描述】:我有这样的要求。 在android原生服务进程中,我们会做一些事情,并以恒定的速度向java层发布数据,即每秒30个。在 App 层,我们必须接收这些数据并进行相应的操作。原生服务和App在两个不同的进程中,我们应该尽快做。
我知道 binder 可以解决我的问题,但实施起来很繁重。 有什么快速简单的IPC机制可以满足我的要求吗?最好有示例代码。谢谢。
【问题讨论】:
【参考方案1】:我有一个利用 Android 属性机制的快速解决方案。
在原生服务中,我设置了一个属性:
char value[PROPERTY_VALUE_MAX];
memset(value, 0, sizeof(value));
sprintf(value, "%d:%d:%d:%d", x, y, width, height);
property_set("mstar.media.face", value);
在 java 应用程序中,我得到了这个属性
String sFace = SystemProperties.get("mstar.media.face", "");
这可能不是最好的解决方案,但可以满足我的要求。 我稍后会寻找更好的解决方案。
【讨论】:
以上是关于Android Java 和原生进程之间有啥快速简单的 IPC 机制吗?的主要内容,如果未能解决你的问题,请参考以下文章