jni相关内容

加载JNI .DLL,GCC编译的作品,G ++编译失败

我有一个简单的JNI .DLL,我试图在测试Java应用程序中使用。它是一个 .c 文件,它由一对函数组成,头文件由 javah 生成。 (我正在使用MinGW btw编译) 如果我使用GCC编译并链接此代码,则可以使用System.loadLibrary()加载.DLL,并使用它。如果我使用G ++编译它, loadLibrary()将会失败并显示可怕的“UnsatisfiedLinkEr ..
发布时间:2018-04-18 21:02:14 其他开发语言

g ++:如何取消导出的符号

我试图编译一个使用JNI的Java库。当我启动程序时,我看到一个UnsatisfiedLinkError崩溃,它说DLL中找不到特定的方法。 仔细检查后,我发现我用于编译和链接的g ++通过向方法名称添加后缀(如“@ 8”或“@ 16”)来改变我的方法名称。有没有人知道正确的编译器选项来禁用名称修改?提前感谢! 编辑:我通过Eclipse + CDT插件使用MinGW。 解决方案 ..
发布时间:2018-04-18 20:30:22 Java开发

在java中运行fortran exe

尊敬的先生/女士, 我有一个fortran exe文件,它通过对输入文件进行一些操作来获取输入文件并生成输出文件。我能够运行(我认为fortran编译器在linux中是可用的)。现在请建议如何使用java(在Linux机器上)运行这个fortran可执行文件。 我尝试的是, String cmd =“fortranExe arg1 arg2”; // fortranExe ..
发布时间:2018-03-16 17:06:07 Java开发

通过Java进行文件系统更改监视

我想通过java监视系统上选定目录的变化。我对java 7中的 watchservice 有一些想法。但watchservice只返回发生更改事件(MODIFY,DELETE)的目录名称。另一方面,我希望获得所有有关更改的信息,例如,进行更改的用户,发生更改的时间等。 就像想读取NTFS文件系统上的更改日志一样。 Java中有没有其他方法可以异步记录这些更改? ... 在此先感谢。 ..
发布时间:2017-11-06 21:51:31 Java开发

内存映射文件的性能/稳定性 - Native或MappedByteBuffer - 与普通的“FileOutputStream

我支持使用平面文件(纯文本)进行持久性的遗留Java应用程序。由于应用程序的性质,这些文件的大小可以达到每天100 MB,并且应用程序性能的限制因素往往是文件IO。目前,应用程序使用普通的“java.io.FileOutputStream”将数据写入磁盘。 最近,我们已经有几个开发人员断言使用内存映射文件,以本地代码(C / C ++)实现并通过JNI访问,将提供更高的性能。但是,FileO ..
发布时间:2017-11-04 21:46:31 Java开发

android:libffmpeg-neon library加载:致命信号11

我正在使用使用ffmpeg的Android应用程序。我已经交叉编译ffmpeg,它在大多数设备上都很好。但是在一些三星设备上,我正在加载libffmpeg-neon.so文件时遇到了致命的信号11。 我已经重新编译了ffmpeg和调试符号( - 禁用剥离--enable-debug = 3 和 cflags + = -gstabs + )并且具有堆栈跟踪: 09-24 12:30:4 ..
发布时间:2017-10-24 00:55:09 移动开发

android ffmpeg .so下载

我尝试过几次在windows-7上使用Android NDK $手动编译FFMPEG b $ b,但从未成功。 所以我认为使用预编译的lib最好,因为我已经在使用与之相同的技术: https://github.com/guardianproject/SSCVideoProto 但是ffmpeg这个项目中的lib非常老了。 任何帮助都非常感谢....... 解决方案 由于 ..
发布时间:2017-10-23 21:19:40 移动开发

使用FFmpeg检索专辑封面

我正在开发一种依赖于FFmpeg来检索音频元数据的Android应用程序。我知道可以使用FFMpeg以编程方式检索专辑封面。然而,一旦你解码了艺术(MP3中的一个视频帧),怎么生成一个应用程序中使用的图像文件(PNG)呢?我搜索全部,但似乎找不到一个工作的例子。 编辑,这里是解决方案: #include #include ..
发布时间:2017-10-23 21:13:29 移动开发

Android - 连接两个视频

我正在连接Android上的两个视频。我已经在使用ffmpeg来满足其他需求,但是我使用的是 halfninja的一个,只有0.9。 0.9一个不允许以下方法: // filter_complex不被识别 vk .run(new String [] { “ffmpeg”, “-i”, inputFile1, “-i”, inputFile2, “-filter_complex”, ..
发布时间:2017-10-23 20:50:51 移动开发

通过ffmpeg的Android视频修剪

我已经从此链接下载github的视频修剪代码。 它第一次工作正常,但是当我第二次尝试运行它时,代码崩溃,没有任何异常,那么当我尝试在第三次运行它之后,再次运行它崩溃它的作品!任何人对这种行为有什么想法? 我还在开发一个具有修剪视频的模块的应用程序。 我真的很感激,如果有人可以帮助我。 解决方案 https://lists.ffmpeg.org/pipermail/libav- ..
发布时间:2017-10-23 20:47:41 移动开发

如何使用JNI传递和接收对象

我有一个 JAVA 应用程序,因为我想将对象作为参数传递给 C 代码使用 JNI 再次,我想从 C 代码中的对象收到 JAVA 使用 JNI 。 在JAVA方面,我只是创建一个应用程序并将其传递给该方法如下所示 JlibFprint.fp_image_data fpimg = new JlibFprint.fp_image_data(); //对象要传递 // fp_image_d ..
发布时间:2017-10-01 16:58:47 Java开发

如何通过SWIG到Java处理C ++中的异常

我们正在C ++代码中实现一个包装器,用于暴露于Java客户端。我已经看到有关异常处理的 SWIG文档,但这是什么翻译成三层编码术语(C ++ / SWIG / Java)? 如果有人有工作示例或建议,我将不胜感激。 解决方案 自从我摔跤之后(请参阅我的个人资料中的博客,这是在python,SWIG,例外和导演,但应该有帮助)让我给你几条建议: 不要将C ++异常发送到Java ..
发布时间:2017-10-01 16:00:17 Java开发

在JNI代码中抛出异常的最佳方法?

我想要一个一致和简单的方法来在JNI代码中抛出异常;处理链接异常的东西(隐式地从env-> ExceptionOccurred方法,或者由参数显式地,以任一方式是好的),并且每次我想要这样做时,可以节省我查找构造函数。上面所有的都是C,尽管我可以在需要时从C ++翻译它。 有没有人有这样的东西可以分享? 解决方案 我们只是为每个想要抛出的异常类型编写实用程序方法。以下是一些示例: ..
发布时间:2017-10-01 13:02:01 Java开发

当我从本机Java方法抛出C ++异常时会发生什么?

假设我将Sun的JVM嵌入到C ++应用程序中。通过JNI我调用了一个Java方法(我自己的),它依次调用我在一个共享库中实现的本地方法。 如果此本机方法引发C ++异常,会发生什么? 编辑器是gcc 3.4.x, jvm是sun的1.6.20。 解决方案 在JNI文献中,单词异常似乎是专用于引用Java异常。本地代码中的意外事件被称为编程错误。 JNI显然不需要JVM来检查编 ..
发布时间:2017-09-28 21:40:53 Java开发

android - JNI中写原生c++代码编译,各种 error: 'xxx' does not name a type?

问 题 本人小白,以前是做Android的,现在刚开始做ndk开发,就我一人,使用的是studio,现在一般的java和c++之间的调用和传参没什么问题,但是现在在做的是一个人脸识别的项目,公司使用的是c++写的代码,c++代码很多,然后使用让我使用jni进行调用里面的方法,但是面临一个头疼的问题,就是,写好头文件之后,现在在拷贝他们的c++代码进来,除了调用的几个函数实现的时候用的是JNI的方 ..
发布时间:2017-09-06 08:38:29 移动开发

java - c++ 通过jni创建jvm比直接启动jar要卡很多?

问 题 我想在c++中用jni调用java程序的入口main函数,但是这样创建的jvm比直接用javaw命令运行要卡很多,但是jvm参数设置的都是一样的。在c++中运行,fps只有10-30,直接运行jar却能达到50-100。 求教这是什么原因?有什么改进的办法吗? #include using namespace std; extern "C" { __d ..
发布时间:2017-09-05 23:45:30 Java开发

c++ - JNI C怎么调用 返回 byte[] 的Java方法?

问 题 Java 方法如下 // 签名: "()[B" public byte[] array(){...} 如何在JNI中调用此方法并获取返回值呢? 我没有找到CallByteArrayMethod这样的函数,求大神指教! 解决方案 可以参考StackOverFlow的同类问题 jobject obj = ... // This is the object yo ..
发布时间:2017-09-05 22:32:13 Java开发

从Java发送键盘事件到任何应用程序(屏幕键盘)

我正在使用java开发一个屏幕键盘。这个键盘每个可能的键都有一个 JComponent 。当在按钮上检测到鼠标向下时,我想将特定的键盘代码发送到当前焦点的应用程序。键盘本身在一个 JFrame 中,没有装饰,并设置为永远在上。 我发现机器人类可用于模拟本机队列上的这些键盘事件。但是,在这种情况下,选择 JComponent 将意味着在 JFrame 上收到了按键,将无法在其他应用程序中收到它 ..
发布时间:2017-08-31 03:46:16 Java开发