PDA ,型号 HC720S ,usb 连接后,内部文件里有找到文档和 lib 文件夹,里面有 jar 包,以及.so 文件。
项目是 kotlin 的,本人很少接触安卓开发,导入成功后,没有错误提示后就点击运行了,结果闪退,logcat 显示的信息关键部分:
java.lang.UnsatisfiedLinkError: dlopen failed: library "libIAL.so" not found
at java.lang.Runtime.loadLibrary0(Runtime.java:1077)
at java.lang.Runtime.loadLibrary0(Runtime.java:998)
at java.lang.System.loadLibrary(System.java:1656)
at com.atid.lib.dev.barcode.params.ATScanSE4710Parameter.<clinit>(ATScanSE4710Parameter.java:36)
at com.atid.lib.dev.ATScanner.<init>(ATScanner.java:106)
at com.atid.lib.dev.ATScanManager.checkDevice(ATScanManager.java:251)
at com.atid.lib.dev.ATScanManager.getInstance(ATScanManager.java:114)
at com.example.cpdac.MainActivity.onCreate$lambda$1$lambda$0(MainActivity.kt:60)
文件"libIAL.so"我已经跟着网上教程放到 jniLibs 下的 aremabi 了,还是不行。这是我的项目文件夹架构:
1
cheng6563 36 天前
aremabi 一般指旧版 arm 架构。 现在的 32 位 arm 架构是 armeabi-v7a ,64 位是 arm64-v8a 。
|
2
shayebushi 36 天前 1
app/build.gradle, 只保留 armeabi 试试
ndk { abiFilters "armeabi", "armeabi-v7a", "arm64-v8a" } |
3
daohanghao 36 天前
android {
sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } } |
4
okakuyang 36 天前
大概率是因为 so 文件架构不对,aremabi 是比较老的架构了
|
5
mmrpeng 36 天前
sourceSets {
main { jniLibs.srcDirs = ['libs'] } } 然后 libs ├─arm64-v8a └─armeabi-v7a 放对应 arch 的 so 库文件 |
6
jinker OP |