Android报错:java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoade

最新研究一下,人脸识别的demo,运行还是出现了问题。

报错:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoade

cpu架构:armeabi 、armeabi-v7a 和x86 编译 NDK 库时,可以使用三种支持的应用二进制接口(ABI):

  1. ‘armeabi’ – 默认选项,将创建以基于 ARM* v5TE 的设备为目标的库。 具有这种目标的浮点运算使用软件浮点运算。 使用此 ABI 创建的二进制代码将可以在所有 ARM* 设备上运行。
  2. ‘armeabi-v7a’ – 创建支持基于 ARM* v7 的设备的库,并将使用硬件 FPU 指令。
  3. ‘x86’ – 生成的二进制代码可支持包含基于硬件的浮点运算的 IA-32 指令集。

报错信息提示,缺少对应的so库包。

解决方法:

  1. 在libs下面创建一个armeabi-v7a(缺啥补啥)文件夹。
  2. 把armeabi *.so的文件复制一份,补全文件。
  3. 最后重新运行。

虽然,armeabi目录下的SO库就是通用的。但是,这不是根本的解决办法,通用的SO库在这种情况下运行是并不高效的。所以,根本的解决办法是你必须针对这个CPU类型做适合这个CPU 的SO库。

你可能感兴趣的:(Android之开发问题)