android - 有什么方法可以从 .c 和 .h 文件生成 JNI 文件?

标签 android java-native-interface openssl

我为 android 编译了 Openssl 但我看不到如何从 java 访问函数。我想我需要某种 JNI 文件。有没有办法为 libssl.solibcrypto.soOpenssl .c 和 .h 文件。

最佳答案

看看swig .这应该能够生成必要的 Java 和 C 代码,以允许您从 Java 调用 openssl header 中定义的 native 函数。

你应该能够做到:

swig openssl.h

您将拥有一些表示 openssl.h 接口(interface)的 java 类,并且您将拥有一个需要为 android 交叉编译的 c-wrapper(就像您为 openssl 所做的那样)。

在另一个节点上,你可能想看看 Bouncy Castle .这是 android 中包含的加密系统(可通过 javax.net.ssl 访问 - 阅读该链接听起来 openssl 已包含在 android 中)。

关于android - 有什么方法可以从 .c 和 .h 文件生成 JNI 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6185260/

相关文章:

Android JNI 使用 dlopen() 代替 system.loadlib

c++ - 如何在没有 p、q 等的情况下加载 RSA key 对

c++ - 如何使用 RSA/AES 加密/解密较大的文件

java.lang.UnsatisfiedLinkError 即使设置 -Djava.library.path

c++ - 运行使用 MinGW 构建的可执行文件时出现缺少 msvcr100.dll 错误

c++ - 如何以编程方式获取用于验证客户端证书的 CA 证书

java - 获取目录中文件的最后修改日期

java - 在内部存储中保存自定义对象的 ArrayList

android - 如何将 wrap_content 作为高度分配给动态加载的 gridview

android - 如何在android中获取默认应用程序图标的drawable id