2011-05-31 64 views
3

我编译Openssl为Android,但我不知道如何从Java访问功能。我想我需要某种类型的JNI文件。有没有办法从Openssl .c和.h文件生成的相应的JNI文件libssl.solibcrypto.so以任何方式从.c和.h文件生成JNI文件?

+0

我认为你必须有编译Openssl的头文件(.h),如果你有,在jni的帮助下你可以做到。 – 2011-06-02 11:07:24

回答

0

看看swig。这应该能够生成必要的Java和c代码,以允许您调用Java中openssl头中定义的本地函数。

您应该简单地能够做到:

swig openssl.h 

,你将有代表openssl.h接口一些Java类,你将有一个C形包装,你需要crosscompile为Android(如你已经完成了openssl)。

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