问题标签 [jnienv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
136 浏览

java - 从 nasm 创建的 dll 中使用 JNIEnv

我一直在尝试调用 JNIEnv 函数 GetVersion(对于初学者),它的索引为 4(根据本网站)。

我一直在使用此站点作为参考,并通过使用 [ebp + x] 而不是参数名称将 masm 代码调整为 nasm。

下面的类和程序集文件应该创建一个乱码输出,但是一条错误消息将我引导到一个日志文件。
在这个非常大的日志文件中,我发现所谓的寄存器到内存映射似乎并没有将寄存器的内容识别为 JNIEnv 函数(在 eax 中)而是未知值,这一点特别有趣。

谁能告诉我我做错了什么?
我只会附加登录请求,因为它相当大。

Java代码:

ASM 代码:

希望这可以被认为是一个有趣的问题与 SSCE
您真诚地
mmm

0 投票
1 回答
1743 浏览

java - Android JNI:CallObjectMethod 上的 SIGSEGV

我正在尝试调用自定义 Java 类型的方法,但接收到 SIGSEGV 信号。

这是Java代码

这是本机代码

0 投票
2 回答
215 浏览

java - 使用 JNI 从 java 调用非静态方法到 cpp

我正在尝试使用 JNI 将非静态方法从 java 调用到 C++ 我的 Java 代码在这里:

}

我的 C++ 代码在这里:

Java 运行时环境检测到一个致命错误:

0 投票
1 回答
183 浏览

java-native-interface - 在 JNI 中使用参数调用 java 方法

我正在开发 JNI 程序,但无法从我的 C++ 程序中调用 java 方法。

java方法的代码片段在这里

我想从 C++ 程序中调用这个 java 方法。

我可以调用代码的主要方法是

我想像这样调用 getTables 方法。请帮我解决它。

0 投票
2 回答
1761 浏览

android - JNIEnv 用于从本机代码中获取 ANDROID_ID

我需要在我的本机库中获取 Android 唯一设备 ID。据我所知,它可以用 Java API 完成,我需要使用 JNI。我读了这个,有类似的问题,但是访问了不同的 ID。但是这个解决方案需要参考 JNIEnv 来获取 Java 对象/方法。当从 Java 调用 JNI 方法时,这没有问题,JNIEnv 将从 Java 传递。但是我如何才能获得“全部”本机代码的 JNIEnv 呢?

0 投票
0 回答
579 浏览

java - Is it possible to attain a reference to the Activity instance which from JNI?

I know that I can attain the Activity object when I call into JNI using the jobject passed into the native method. But, lets assume I cannot use that method to do so.

How can I use the just the JavaVM and JNIEnv objects to attain the Activity instace ?

I know I can use env->FindClass("android/app/Activity") to get to the Activity class, but again, I want the actual Activity instance which initiated my native lib.

0 投票
1 回答
876 浏览

c - 如何从 C JNI 调用返回 java 方法的字符串?

有许多函数可用于从 C 调用 java,但是没有函数用于调用 String 返回 java 方法。有人可以告诉我如何从C调用字符串返回java方法吗?

0 投票
1 回答
1982 浏览

java - 如何将 jstring 转换为 char 数组?

我无法将 jstring 转换为 char 数组

在文件 p.txt 我有这个:��

0 投票
2 回答
1007 浏览

android - Android Jni:全局和局部引用变量崩溃

我有调用 java 对象方法的 jni c++ 代码,例如:

这在主线程中执行时非常有效,但是当我尝试在另一个线程中执行它时它会崩溃,因为它说它是在另一个线程中创建的:O !! 但是在我阅读 google android 开发者网站后,他们说从任何线程访问 Global Ref 都很好,所以我把那个代码改成了这样。

但我得到了这个崩溃:

任何帮助表示赞赏。

0 投票
0 回答
194 浏览

java-native-interface - 获得 JNIEnv 性能的最佳方法?

我一直在努力寻找一种在 C# 和 Java 之间传递数据的快速/高性能方式。

到目前为止,我最初和独特的方法是使用 JNIEnv。

一个 Java 类 Adder 的简单测试用例:

在 C# 方面:

对于相同的物理设备:对于大小为 100 万的 float[] 数组,在 c# 中分析此 Add() 方法的值在 200-500 毫秒之间!请注意,如果我在 Android 原生 Eclipse 项目中运行相同的测试,则调用该函数需要 20-50 毫秒。

如果您需要处理大量数据(如图像、矩阵)以满足实时要求……那么这将变得不可用。

谁能建议将数据绑定到 Java 的另一种方法或 JNIEnv 中的另一种方法?

感谢您的时间。