本机代码作为与JNI分开的进程

时间:2014-11-19 21:24:45

标签: android android-ndk java-native-interface

我当前的项目涉及一个带有一些现有本机代码的Android应用。据我所知,我可以将代码作为单独的二进制文件使用,它将在一个单独的进程中运行,也可以通过JNI运行,从而实现更简单的通信。

JNI通常应该优先于过度方法吗?本机代码(编写为UNIX二进制文件)实际上依赖于持续的性能。它应该不受其他代码(例如Android视图,活动,进程,线程......)的影响,至少在理论上是这样。实际上,我们的目标是尽可能保持高效。 JNI是否会导致性能问题,特别是在通信开销和VM线程方面?

分离的二进制文件会带来好处 - 维护简单 - 不必更改现有的本机代码库(当然,兼容性更改除外) - 运行分离的二进制文件的进程可能比单进程JNI解决方案更不容易受到性能影响。

0 个答案:

没有答案