java-native-interface 相关问题

Java Native Interface(JNI)既提供了JVM实现运行系统本机代码的能力,也提供了本机代码运行Java代码的能力(通过创建新的JVM实例)。 JNI最常见的目标语言是C和C ++,至少Sun / Oracle JDK实现提供了帮助程序命令(javap - 用于代码反汇编,javah用于代码生成)。

Windows控制台'cl'编译:每次都执行vcvars64.bat?

我正在尝试使用“cl”在Windows控制台中编译C文件。 当我第一次尝试这个时,它发送了这样的消息: 致命错误 C1083:...'stdio.h':没有这样的文件或目录。 所以我搜索了...

回答 2 投票 0

JNI 自动释放 LocalReference 的具体时间是什么时候?

想想jni中的这种情况: 我首先在java中调用本机函数1 本机函数1调用java函数2 java函数2调用native函数3 我需要知道的是何时......

回答 1 投票 0

使用 System.load("path/to/opencv") 加载 OpenCV 在 Windows 上失败,在 Linux 上工作

我正在发布一个使用 OpenCV 作为单个可执行 jar 的应用程序。为了避免最终用户需要在自己的系统上下载 OpenCV,OpenCV 二进制文件存储在 jar 内,并且

回答 1 投票 0

使用 FFmpeg 检索专辑封面

我正在开发一个依赖 FFmpeg 来检索音频元数据的 Android 应用程序。我知道可以使用 FFMpeg 以编程方式检索专辑封面。然而,一旦你解码了......

回答 3 投票 0

如何使用jvmti获取方法局部变量和类变量的值

我试图使用JVMTI捕获变量值,当生成异常事件时,我浏览了jvmti文档,发现没有函数可以让我检索...

回答 2 投票 0

在 Android 中安全存储 API 密钥

我直接在 Android Kotlin 应用程序中使用 openAI 来实现聊天功能,而不是使用存储 ApiKey 并与 openAI 通信的自定义服务器,然后在端点中返回响应...

回答 1 投票 0

Android ndk:使用 jni 从 C++ 调用 Java 方法的问题

我尝试在Android NDK上工作,我的第一次测试不是很有结论,我需要帮助,因为我没有看到我的错误在哪里。 以下代码编译没有问题,但是在

回答 2 投票 0

访问 16 位 DLL

我接到的任务是升级最初用 GFA Basic 编写的现有 16 位桌面应用程序。 我想知道是否有可能访问这些 16 位 Dl 内部的函数...

回答 2 投票 0

无法使用frida(android)找到JNI函数

我在android应用程序中有以下课程: 包 com.app.s; 公共最终类 Api { 公共本机 int func(String str, String str2); ... ... 静止的 { 尝试 { ...

回答 1 投票 0

异步加载本机库的最佳实践

我知道每个人都只是在像 static {System.loadLibrary("libXXX")} 一样加载类时加载本机库。最近我发现 StrictMode 在 System.loadLibra 处显示 DiskReadViolation...

回答 1 投票 0

将libR(来自R统计包)编译为java+jni的独立C库

我正在尝试使用 -fPIC 标志将 R 编译为静态库,以便我可以在 java+JNI 中使用它(只有这可能吗?),但我在“.configure”中找不到正确的标志来编译R这样。 我...

回答 1 投票 0

如何从 Kotlin/Native 调用 JNIEnv 函数

jni.h 提供这个 结构JNINativeInterface_ { ... jint (JNICALL *GetVersion)(JNIEnv *env); ... } 在C中调用它可以写成 无效测试(JNIEnv *env){ // C jint版本=...

回答 2 投票 0

如何使用 GObject Introspection 生成 Java 绑定?

我需要使用spice-gtk中的GLib库。因为它是一个 GLib 库,这意味着我可以使用 GObject 自省来生成 Java 绑定。我发现我需要获取 GIR XML 文件...

回答 1 投票 0

动态添加原生钩子

有没有办法使用 JNI 动态添加本机钩子?我的意思是,我想重写类(或新类)中的一些方法,以便重写调用我的本机代码,

回答 2 投票 0

使用字符串在 C++ 中设置控制台标题

我想知道如何使用字符串作为新参数来更改 C++ 中的控制台标题。 我知道您可以使用 Win32 API 的 SetConsoleTitle 函数,但这不需要字符串参数...

回答 4 投票 0

无法在android studio中从native-lib.cpp创建或访问路径:/storage/self/primary/Download/的文件

在我的一个项目中,它要求我从 android studio 中的 .cpp 文件在路径 /storage/self/primary/Download/ 创建/读取/写入文件,但我无法访问该路径。 截至目前我能够...

回答 1 投票 0

哪些 VM 或 GC 支持 JNI 固定?

GetArrayElements 系列函数被记录为复制数组或将它们固定到位(这样做可以防止压缩垃圾收集器移动它们)。是

回答 2 投票 0

如何从 JNI 方法正确调用 NSOpenPanel 以在正确的线程上运行?

由于我不熟悉 Objective-C 和 JNF,我只能让 JNI 类部分执行。到目前为止我已经尝试过如下: 这是 Open.java,它是更重要的 Java S 的 MCV...

回答 1 投票 0

如何从python ctypes调用ffmeg libavcodec av_jni_set_java_vm

我需要从 ffmpeg libavcodec.so https://ffmpeg.org/doxygen/trunk/jni_8h.html 调用 av_jni_set_java_vm 函数。 如 ffmpeg 文档中所述,它采用 void *vm 作为参数。 我是我们...

回答 1 投票 0

JNI::NewStringUTF 中修改后的 UTF-8 处理在最近的 Android 版本中是否发生了变化?

在早期的 Android 版本中,JNI:NewStringUTF 在传递具有 4 字节编码的有效 UTF-8 字符串时常常会给出错误: 输入无效 修改后的 UTF-8 这是因为 JNI/Java ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.