
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 2024-11-15 17:52:03 +08:00 aremabi 一般指旧版 arm 架构。 现在的 32 位 arm 架构是 armeabi-v7a ,64 位是 arm64-v8a 。 |
2 shayebushi 2024-11-15 17:56:03 +08:00 app/build.gradle, 只保留 armeabi 试试 ndk { abiFilters "armeabi", "armeabi-v7a", "arm64-v8a" } |
3 biumall 2024-11-15 18:00:21 +08:00 android { sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } } |
4 okakuyang 2024-11-15 18:05:19 +08:00 大概率是因为 so 文件架构不对,aremabi 是比较老的架构了 |
5 mmrpeng 2024-11-15 18:15:17 +08:00 sourceSets { main { jniLibs.srcDirs = ['libs'] } } 然后 libs ├─arm64-v8a └─armeabi-v7a 放对应 arch 的 so 库文件 |
6 jinker OP |