【问题标题】:how to call javah from ADT ide如何从 ADT ide 调用 javah
【发布时间】:2013-10-06 09:27:46
【问题描述】:

从 NDK 中获取基本示例。 添加了一个功能,该功能在本机方面尚不存在。 现在我正在寻找一种从 ADT IDE 调用 javah 的方法,并希望在我的文件附近生成函数头:

extern "C" {
JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj, jint width, jint height);
JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj);
}
;

JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj, jint width, jint height) {
    setupGraphics(width, height);
}

JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj) {
    renderFrame();
}

至少到extern "C" 部分。

有什么办法吗?最佳做法是什么?

  • 使用工具生成gl2jni.cpp,而不是剪切和粘贴到gl_code.cpp,以保留gl_code.cpp 中的现有代码? - 还是我错过了基本的环境设置?

我需要编写一些构建配置吗? - 总是将这些标题生成到一个空文件?

是否有任何插件可以从 IDE 中完成?

【问题讨论】:

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


    【解决方案1】:

    由于您使用的是 Eclipse IDE,因此可以轻松地自动运行 javah,以便在编译 Java 代码时将头文件放在您想要的任何位置。请参阅我对 SO here 的回答。

    【讨论】:

    • +1,为了努力,但在 java 构建过程中,ant build.xml 在 navive 库构建之后被调用。至少它会生成文件所需的标题..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-08
    • 1970-01-01
    • 1970-01-01
    • 2012-03-27
    相关资源
    最近更新 更多