技术问答

问题描述 我正在尝试构建 botan (使用Jni的库)运行A Android上的本机C ++程序很少. 我设法使用NDK工具链(NDK R5B)创建了一个Libbotan.o,因此没有任何错误. 但是,当我从Android项目(示例)中编译源文件(示例error.cpp)时,我会收到以下错误: Android NDK: WARNING: Unsupported source file extensions in /home/fen

2023-01-19  395
技术问答

问题描述 我在Windows上工作,但我被困在Mac上.我有佳能SDK,并在上面构建了JNA包装器.它在Windows上运行良好,需要Mac的帮助. 在SDK中,有一个函数可以注册回调函数.基本上,当事件发生在相机中时,它调用回调函数. 在Windows上,注册后,我需要使用User32进行事件并通过以下方式派遣事件. private static final User32 lib = User32.INSTANCE; boolea

2023-01-19  444
技术问答

问题描述 我正在尝试实现以下内容: 1)我在Java侧有一个字节阵列,代表图像. 2)我需要让我的本机代码访问它. 3)本机代码使用GraphicsMagick解码此图像,并通过调用调整大小来创建一堆缩略图.它还计算出图像的感知哈希,该图像是向量或unint8_t数组. 4)一旦我将这些数据返回到Java侧,则不同的线程将读取它.缩略图将通过http上传到某些外部存储服务. 我的问题是: 1)将字节从Java传递到我的本

2023-01-19  411
技术问答

问题描述 项目 我正在使用Java本机接口编写一个内部网络和网络测试工具的C库的Java命令行界面. C代码(我没有编写)很复杂且低级别,通常会在位级别操纵内存,并专门使用原始插座.该应用程序是从C端(在后台运行的PTHREADS)以及Java端(ScheduleDthRe​​adPoolExeCutors运行的线程来调用本机代码)的多线程.也就是说,C库应该大部分是稳定的.事实证明,Java和JNI接口代码正在引起问题. 问题(S

2023-01-19  418
技术问答

问题描述 我一直在关注本教程,在步骤5中,我从GCC中获得以下输出: HelloWorld.c:1:17: error: jni.h: No such file or directory In file included from HelloWorld.c:3: HelloWorld.h:15: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ befor

2023-01-19  385
技术问答

问题描述 似乎与JNI有关的大多数文档或辅助库(Java Native界面)都与从Java调用本机代码有关.这似乎是它的主要用途,即使它能够更多. 我想主要朝相反的方向工作:通过向其添加一些Java库来修改现有(相当大的)便携式C ++程序.例如,我想通过JDBC调用数据库,或通过JMS发送消息队列系统,或发送电子邮件,或致电我自己的Java类,等等.但是使用RAW JNI,这是非常不愉快且容易出错的. . 因此,我理想地想编写可以

2023-01-19  370
技术问答

问题描述 我们有一个使用GPU(OPENCL)的本机c/asm使用特定方法的大数据进行应用程序,它只是完美的,没问题.项目的一部分(Web和Distribution)是由JEE开发的,我们只需要致电本机应用程序/库. 我们试图使用Process类称其为分离的外部过程.问题在于我们无法控制应用程序(事件,处理程序,线程等).我们还试图将C代码切换为Java代码,但性能死亡.除了运行本机代码作为过程,我正在考虑JNA和JNI,但是有一些

2023-01-19  400
技术问答

问题描述 我有一个带有本机函数的小JNI文件,该文件将字符数组转换为字节数组(因此我可以将其发送给我的C ++客户端). 定义如下: JNIEXPORT jbyteArray JNICALL Java_com_example_comtesttcp_communicationmoduleTCPIP_ConvertString( JNIEnv * env, jobject, jcharArray Buff

2023-01-19  360
技术问答

问题描述 我想从本机代码调用Java方法.我遵循以下步骤: 在Android 中调用C ++的Java方法 但是,我的应用程序在称为Java函数的地方崩溃. 我的Java代码如下所示: package com.example.jnitry; import android.os.Bundle; import android.app.Activity; import android.util.Log; import androi

2023-01-19  385
技术问答

问题描述 我有一个Android应用程序,该应用程序调用JNI的本机共享库.此共享库调用一些可加载的内核模块.ko 当JNi调用调用内核模块的共享库中的函数时,我的应用程序运行失败.但是,当我使用此共享库编写可执行文件时,在呼叫上方函数时可以正常工作. 我发现我的应用程序以用户名为” U0_AXX”,并且我的可执行文件由命令行运行.因此,也许它没有权限调用内核模块. 我的问题是,该本机代码如何在root权限

2023-01-19  408

zblog模板

牛资源