从Android项目调用本机方法

时间:2012-02-07 22:34:20

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

我正在创建一个尝试注入触摸事件的应用,这需要事件时间。当我调用SystemClock.uptimeMillis()来获取时间时,会出现运行时错误。我认为问题源于uptimeMillis()是一个本机方法。运行时期间抛出的错误是UnsatisfiedLinkError。

android jar文件包含在项目中,允许编译而没有任何错误。我认为问题是java包装器(SystemClock.java)在项目中可用。但是,在运行时期间无法找到C中的本机方法(来自文件android_os_SystemClock.cpp)。关于如何在构建项目时包含本机方法(java包装器所需)的任何想法?

非常感谢!

1 个答案:

答案 0 :(得分:3)

您可以将NDK项目导入Eclipse SDK项目。在您的项目上右键单击并选择 - > Android工具 - >添加原生支持 - >单击完成。 这会将您的本机项目文件提取到Eclipse。现在你必须实现几个示例项目中给出的函数。