android eclipse jedisct1 / libsodium从哪里开始

我有一个程序需要执行libsodium加密.我发现这个库 libsodium
但我认为它需要与NDK一起使用.所以我开始阅读有关NDK的教程,但我仍然不知道从哪里开始使用这个库.如果有人可以提供一些暗示或非常有用的东西来介绍如何整合这个库,我会很高兴.

谢谢

解决方法

要将libsodium集成到您的Android应用程序中,您需要:

>为您的Android平台编译的libsodium
>像J000一样的JNI绑定

如果您信任互联网上的随机用户(您不应该这样做!),请下载this tarball并将其解压缩到您的项目源中.否则,请按照以下说明自行编译.

libsodium

你需要一个带有Android NDK的Linux机器/ VM来编译libsodium共享库,看起来你需要当前的git master分支来编译NDK.检查完毕后,编译ARM,ARMv7和x86的Android库代码

./autogen.sh
./dist-build/android-arm.sh # for older ARMv6 devices
./dist-build/android-armv7-a.sh # for the more recent ARMv7 devices
./dist-build/android-x86.sh # for the emulator / x86 devices
# Provide the directory names nkd-build expects
ln -s libsodium-android-armv6 libsodium-android-armeabi
ln -s libsodium-android-armv7-a libsodium-android-armeabi-v7a
ln -s libsodium-android-i686 libsodium-android-x86

钾,JNI

要编译kalium,您需要安装SWIG.然后,您需要生成SWIG C包装器,为您的目标平台编译libkaliumjni本机代码,将其安装到您的app libs /目录中并包含JAR.

在kalium-jni / jni子目录中,为您的主机创建SWIG包装器和本机libkaliumjni.so(测试JAR需要它):

./compile.sh

然后,修改jni / Android.mk并将/ installs /替换为编译libsodium的地方,将$(TARGET_ARCH)替换为$(TARGET_ARCH_ABI),然后在kalium-jni目录中运行:

ndk-build APP_ABI=armeabi,armeabi-v7a,x86
[...]
[x86] Install        : libkaliumjni.so => libs/x86/libkaliumjni.so
[armeabi] Install        : libkaliumjni.so => libs/armeabi/libkaliumjni.so
[armeabi-v7a] Install        : libkaliumjni.so => libs/armeabi-v7a/libkaliumjni.so

现在libs /目录包含本机kalium库.将其复制到您的Android项目中.

最后,您需要编译kalium JAR:

mvn clean install

它最终应该在〜/ .m2 / repository / org / abstractj / kalium / kalium-jni / 1.0.0-SNAPSHOT / kalium-jni-1.0.0-SNAPSHOT.jar中.将其复制到libs目录.它伴随着javadoc和源JAR,您可以将其添加到Eclipse中以获取引用.

相关文章

Android 通过adb shell命令查看内存,CPU,启动时间,电量等...
Monkey Android app稳定性测试工具之Monkey使用教程 by:授客...
Android 常见adb命令 by:授客 QQ:1033553122 1、 查看所有已...
这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...