在Android NDK上构建OpenSSL

9

我想在Android 2.1/2.2上使用JNI(基于OpenSSL)来使用DTLS。

有人能帮我入门吗?提供建立OpenSSL用于Android(2.1/2.2)的教程,指导等等。

在此之前有什么需要注意的重要事项吗?

谢谢。


许多运营商允许设备发送UDP数据,但会阻止设备接收UDP数据。在美国,我已经确认了AT&T,Sprint和Verizon的行为。请确保这是您想要的,并且该行为符合您的预期。 - jww
3个回答

13

android-external-openssl存储库和直接检出android openssl软件包有什么区别?http://android.git.kernel.org/?p=platform/external/openssl.git;a=summary - Michael Donohue
Android OpenSSL是(Android核心)系统的一部分。在某些情况下,您需要使用不同于系统版本的其他OpenSSL(需要另一个版本或默认不支持的加密算法),而android-external-openssl可以帮助您自行构建它。 - kost
@MichaelDonohue 链接已损坏,也许是 https://android.googlesource.com/platform/external/openssl ? - vesperto

9

我刚刚完成了对当前官方Android openssl的新分支,并使用NDKr5b中的ndk-build进行构建。我尽可能地让它易于构建。目前还无法构建ARMv4汇编代码,因为它一直失败,所以非常感谢任何帮助。这是git仓库链接:git repo

https://github.com/eighthave/openssl-android

只需在openssl-android中运行ndk-build,您就应该拥有libs/armeabi/libcrypto.solibs/armeabi/libssl.so

编辑:此项目的最新版本有一个新链接:

https://github.com/guardianproject/openssl-android


无法工作:Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: /home/michael/android_dev/openssl/jni/Android.mk /opt/android-ndk-r5b/build/core/add-application.mk:116: *** Android NDK: Aborting.... Stop. - Michael Spector
我无法从您的帖子中确定错误是什么,但我猜测您的NDK安装不完整。add-application.mk肯定应该在那里。 - Hans-Christoph Steiner

0

使用NDK 11c编译它。最大的问题是有人忘记在include/openssl/*中的文件路径之前添加#include ""以引用头文件。 - NoAngel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接