Java Native Interface(JNI)既提供了JVM实现运行系统本机代码的能力,也提供了本机代码运行Java代码的能力(通过创建新的JVM实例)。 JNI最常见的目标语言是C和C ++,至少Sun / Oracle JDK实现提供了帮助程序命令(javap - 用于代码反汇编,javah用于代码生成)。
我有一个java应用程序。该应用程序调用与 JNA 共享的库的“square”方法,并将结果打印到控制台。运行 jar 文件时一切正常,但是......
我在这里注意到,当调用本机方法时,会生成一个包装器。然而,这个包装器似乎仅在编译该方法时生成。所以,我的问题是: 原生方法可以吗...
我在这里注意到,当调用本机方法时,会生成一个包装器。然而,这个包装器似乎仅在编译该方法时生成。所以,我的问题是: 可以是我本地人吗...
我正在使用Java编写一个Android应用程序。我还使用 jni 接口来调用本机函数。 例如: JNIEXPORT jint JNICALL Java_com_app_Native_test(JNIEnv *env, jobject 对象) {
我需要开发一个桌面应用程序,使用 PCI-e 驱动程序从 FPGA 板读取/写入数据。驱动程序已经安装,我可以编译所使用的可执行文件的源代码...
Win32 函数 DwmGetColorizationColor 的 JNA 绑定返回 E_INVALIDARG 错误
我正在尝试使用 JNA 为 Win32 函数 DwmGetColorizationColor 创建绑定。 根据 MSDN,这是函数签名: HRESULT DwmGetColorizationColor( [输出] DWORD *
如何使用 Android Studio Profiler 或其他工具跟踪 JNI 中的内存泄漏
我想知道如何使用 Android Profiler 跟踪 JNI 中的内存泄漏。 我有一个使用 NDK 的应用程序,它在 JNI 中存在内存泄漏。我在 Profiler 中检查过。 JNIEXPORT jfloat JNICALL FACE_ENGINE_METHOD(
我遇到了强化错误 UNSAFE JNI 的麻烦。 我有一个类将本机方法调用到第二个类中。 第二类使用JNI。 当我运行强化扫描时,出现不安全 JNI 错误。 我尝试...
我想知道如何释放c++类的实例。 我尝试这样但发生了错误。 直播 *pLive = 直播::getInstance(); // 用 pLive 做一些事情 env->DeleteLocalRef(reinterpret_cast<
Android Studio 4可以使用API构建项目吗< 9?
我希望我的应用程序支持任何 Android 手机 api 3 及更高版本。 为什么?因为我不喜欢浪费,而这些旧手机完全可以胜任手头的任务。 可悲的是获取有关基本信息...
JNI GetPrimitiveArrayCritical 导致 JVM 崩溃
我有一个java程序调用JNI函数来对字节数组执行计算,返回一个长数组。该程序在 Oracle JDK 1.8.0_221 上运行。为了测试吞吐量,我运行代码
使用 yGuard 进行混淆时如何保留本机(JNI)方法名称?
我正在尝试使用 yGuard 来混淆我的应用程序的 jar 文件。 本机 (JNI) 方法和包含它们的类不应重命名,因为这样应用程序将不再工作......
JAVA代码 布尔 b = invokeNativeFunction(); int i = invokeNativeFunction2(); C代码 jboolean Java_com_any_dom_Eservice_invokeNativeFunction(JNIEnv* env, jobject obj) { 布尔bb=0; ......
如何使用 JNI 而无需将 jvm.dll 位置添加到环境变量路径中
使 JNI 工作的一种方法是进入环境变量并将 jvm.dll 所在的文件夹添加到用户或系统路径 (.../bin/server)。但这意味着在客户端计算机上,当您...
如何在 Android 13 设备上从本机端 (C/C++) 写入文件
我有一个复杂的图像处理应用程序,它使用 C++ 端的本机代码记录图像/视频,并希望写入 DCIM 文件夹。 我已经在 Android 上使用 Scoped Storage 完成了这项工作...
构造一个对象会使jvm崩溃,因为找不到构造函数。签名正确并且构造函数存在。 这是我的新目标代码: JavaObject(jclass klass, const char *
使用 CNI 从 AOT 编译的 Java 应用程序调用本机代码
GNU Java 编译器提供了两种从 Java 应用程序调用本机代码的方法。 首先,Sun Microsystems 制定了 JNI 规范,并且 GCJ 遵循该规范。 瑟...
我想在个人项目中使用这个jar文件(http://sourceforge.net/projects/uirt-j/)。目前,我一直在使用 Eclipse 并尝试导入该 jar(项目 > Java 构建路径 > 添加
Error:(104, 39) 错误:无法通过可变参数方法传递非平凡类型 'cv::Mat' 的对象;调用将在运行时中止 [-Wnon-pod-varargs]
我正在使用jni开发opencv 我尝试将Mat传递给c ++中的java 但我收到这个错误, 这是我的 C++ 代码 void ocrPricetagNeedCallJavaMethodToApi(JNIEnv *env, jobject thiz, Mat
我的 UI 中有一个自定义字形渲染系统。我需要能够从操作系统集中提取单个表情符号并将其渲染为内存中的图像(即 128x128 RGBA)以导出到此...