Android基于JNA加载第三方.so库报错:java.lang.UnsatisfiedLinkError Native library (com/sun/jna/android-aarch64/l

Android基于JNA加载第三方.so库报错:java.lang.UnsatisfiedLinkError Native library (com/sun/jna/android-aarch64/libjnidispatch.so)

java.lang.UnsatisfiedLinkError Native library (com/sun/jna/android-aarch64/libjnidispatch.so)

原因是缺失JNA项目所需的Android平台支撑so库。在这里下载对应Android 平台的jar包:

jna/dist at master · java-native-access/jna · GitHubJava Native Access. Contribute to java-native-access/jna development by creating an account on GitHub.https://github.com/java-native-access/jna/tree/master/dist

如果是arm64-v8a架构,则选择下载 android-aarch64.jar

ad7a30245a9a40b2a75abdd2e45c60d6.png

 把

 android-aarch64.jar

解压,里面是一个libjnidispatch.so,把libjnidispatch.so放到Android项目的libs\arm64-v8a\里面即可。

注意,此时libs需被设置为jniLibs:

893ffc32f5934108a4598fe63ff039cd.png

Android添加C++/CPP项目代码(2)_zhangphil的博客-CSDN博客基于Windows平台,Android NDK(JNI)开发技术》【摘要】本文介绍如何基于Windows平台,在Eclipse中使用Android NDK技术实现“Android平台上的JNI ( Java Native Interface ) ”开发。新增的getStringCpp()是新增的一个方法,因为没有实现所以报红。以上完成后,就可以在Java层像使用普通Java函数一样使用getStringCpp()其中,loadLibrary()里面填写的即是(2)里面的xxx.cpp的xxx名字。https://blog.csdn.net/zhangphil/article/details/130207425

猜你喜欢

转载自blog.csdn.net/zhangphil/article/details/130400296