Android 应用可以调用本地代码了

阅读数:1971 2009 年 7 月 21 日

话题:编程语言移动架构Android语言 & 开发

随着开发者呼声的日渐高涨,Android Native Developer Kit(NDK)现在开始支持(需要NDK 1.5 的首个发布版)在 Dalvik 虚拟机中调用本地代码了。CPU 密集型的操作(无法分配足够的内存)可以从提升的性能和重用现有代码的能力上受益无穷。典型应用包括信号处理、密集的物理模拟及某些数据处理。

NDK 是一个工具套件,开发者可以凭借其创建本地代码的可执行文件与共享程序库。

最初的版本是面向 Java 应用开发者的,他们希望编写本地代码的共享程序库,这主要的好处在于能够访问本地代码 API 并加快应用的执行速度。

首个使用 NDK 的应用就是由开发者Aki编写的越狱风格的游戏。他将应用从JBox2D改成了Box2D。由于垃圾回收器的原因导致 Dalvik JVM 下 JBox2D 的性能很差劲。在转向本地的 Box2D 程序库之后,应用的性能得到了极大的提升,只是每秒的帧数下降了一点点,因为应用已经达到了屏幕所能显示对象数量的极限了。

虽说 Android NDK 一开始只支持整个 Linux 和 Android API 的一个子集,但开发团队已经计划增加新功能了,比如说将要增加与 OpenGL ES 和音频库链接的支持,这将极大地提升游戏的表现和性能。

查看英文原文:Call Native Code From Your Android Applications