问题描述 i有一个JAVA应用程序,该应用程序通过JNI使用C ++ DLL. DLL的一些方法进行了字符串参数,其中一些也返回包含字符串的对象. 当前DLL不支持Unicode,因此字符串处理非常容易: java调用string.getBytes()并将结果数组传递给DLL,该数组只是将数据视为char*. dll使用newstringutf()从const char*. 创建Jstring 我现在正在修改DLL以支持U
问题描述 我有一个JNI库,该库由NDK使用Android应用程序使用. 我没有来源,只为某些拱门编译了.SO文件. 我想在64位x86 Linux PC上的简单控制台Java应用程序中从此库中调用函数. 我做了什么: 我从x86_64文件夹中获取库,并使用System.loadLibrary 将其加载到我的Java程序中 试图启动该程序,并没有详细信息liblog.so: cannot open shared object f
问题描述 我有一个与一组第三方库进行交互的JNI库,并且系统上可能有一个以上版本的第三方库.对于第三方库的每个版本,出于可比性原因,我必须重新编译JNI代码.现在,我通过加载带有特定名称的DLL来处理此问题,如果版本更改,我会更改JNI接口DLL的名称,以便版本的正确名称具有正确的名称. 我希望能够根据用户想要使用的版本动态加载DLL.如果我调用system.loadlibrary在带有不同名称但相同方法签名的DLL上两次会发生什么
问题描述 我可以使用java.nio使用Java读取/编写Linux Block设备.以下代码有效: Path fp = FileSystems.getDefault().getPath("/dev", "sdb"); FileChannel fc = null; try { fc = FileChannel.open(fp, EnumSet.of(StandardOpenOption.READ, StandardOpenOpt
问题描述 如果我只想将值设置为double类型变量,我可能会像: 一样代码 public static native int getDoubleVar(Double dobj); JNIEXPORT jint JNICALL test_jni_Native_testGet(JNIEnv *env, jclass type, jobject dobj) { jclass DoubleClass = env->FindCl
问题描述 我正在尝试将一些lib(.jar&.so)添加到我在Android Studio的Multidex项目中. 当我在项目中仅添加几罐罐子时,一切正常. 如果我添加越来越多的罐子(其他Libs) 我遇到了这个错误: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.
问题描述 我会尝试在C/C ++(使用NDK)中获取设备的imei,并用JNI检索结果. const char *res = exec_get_out("service call iphonesubinfo 3"); 在外壳中工作,但不在我的应用程序中 我在清单中设置了READ_PHONE_STATE权限.这是针对棉花糖Android的目标(我已经在设置中接受了许可) 是否还有其他解决方案可以起作用,或者没有JNI环境不可能? 推荐
问题描述 我在64位Windows 8上运行NetBeans,JDK 1.7_25(64位),按照NetBeans开始JNI的说明( https://netbeans.org/kb/kb/docs/cnd/beginning-beginning-jni-linux.html ) ) 指令适用于linux,但我相信的窗口的原理是相同的(生成.dll文件而不是.so,使用win32包含在jdk中等) ) 我安装了cygwin64以及cy
问题描述 我有一个Java应用程序,该应用程序调用C库用于执行加密函数. 这是C中实现的自定义库,我们需要从某些Java程序中使用. 我需要一种定义swig typemap的方法,该swig typemap允许我调用来自java的函数,并将其视为c函数中的无符号字符指针,其中c函数填充数据并将其返回到java 我目前的不愉快界面文件的摘录如下 %module CryptoFacade %pointer_functions(in
问题描述 我正在尝试在Java代码中调用C函数. 我有这个HAVA代码. public class JavaToC { public native void helloC(); static { System.loadLibrary("HelloWorld"); } public static void main(String[] args) { new Java
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态