【问题标题】:Calling JNI c++ methods directly from C++ possible?可以直接从 C++ 调用 JNI c++ 方法吗?
【发布时间】:2016-01-25 09:22:32
【问题描述】:

是否可以从 c++ 调用 JNI c++ 方法(通常仅在 Java 中使用) 假设有一个使用 JNI 方法的 Android 库,我想直接从我的 c++ 代码中使用这些方法,而不是创建 Java 层。这可能吗?我无法修改 JNI 方法,我不知道 JNI 方法中会发生什么,所以我不能直接使用公共 c++ 方法,我不想将数据向上传递做 java 只是为了再次通过jni接口

【问题讨论】:

  • 一个 JNI 函数原则上可以与运行它的 JVM 执行任意交互(例如,加载类、调用函数),这是您无法控制的。当然可以调用 JNI 函数,但是你能满足它的前提条件吗?您可能需要将有效的 JVM 引用传递给它。

标签: c++ android-ndk java-native-interface jniwrapper


【解决方案1】:

是的,这是可能的。 您可以在没有 java 层的情况下创建 APK。

如果想参考例子,尽量用opengl的简单例子来做。

Android Native Sample

即。您可以直接访问 Android 层。

【讨论】:

    猜你喜欢
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多