我是Android编程的新手,我正在尝试使用libsodium-jni库来完成一些基本的加密任务。在Android Studio中我添加了libsodium-jni-aar作为库依赖项,我可以看到这通过添加修改我的build.gradle文件:
compile 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:1.0.6'
这个库中的许多函数运行正常,但是当我使用Sodium.sodium_init()函数时,我得到了
java.lang.UnsatisfiedLinkError: No implementation found for int org.libsodium.jni.SodiumJNI.sodium_init() (tried Java_org_libsodium_jni_SodiumJNI_sodium_1init and Java_org_libsodium_jni_SodiumJNI_sodium_1init__)
at org.libsodium.jni.SodiumJNI.sodium_init(Native Method)
我猜这是因为sus_init是一个本机函数,并且由于某种原因,实现没有通过gradle安装到手机(或模拟器)。
非常感谢任何帮助。
答案 0 :(得分:0)
要导入Sonatype存储库,您需要添加此
maven {
url "https://oss.sonatype.org/content/repositories/snapshots/"
}
到allprojects
对象中的项目build.gradle文件,该文件应该会产生与此类似的内容:
allprojects {
repositories {
jcenter()
maven {
url 'https://oss.sonatype.org/content/repositories/snapshots/'
}
}
}
然后,您可以在app build.gradle文件中添加compile语句
compile 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:1.0.7-SNAPSHOT'