我是靠谱客的博主 灵巧大侠,这篇文章主要介绍java.lang.UnsatisfiedLinkError: No implementation found for,现在分享给大家,希望可以做个参考。

由于native方法修改了包名,导致load so执行的时候崩溃原因分析;

1)确认报错的方法有没有被混淆。

        查看混淆 文件是否有下面的配置:
                //保留native方法的类名和方法名
                -keepclasseswithmembernames class * {
                    native <methods>;
                }

2)确认so库是否有效并被加载。

  1. apk里有木有这个so库,可以解压缩apk查看lib文件夹下是否有对应的so库,
  2. 如果有这个库,查看对应的cpu架构是不是对的,

        1、adb shell
        2、cat  /proc/cpuinfo

        显示下面:
        Processor       : AArch64 Processor rev 14 (aarch64)
        表示arm64-v8a的(可以向下兼容v5v6v7)。

     3. 确认so被加载,System.loadLibrary(“xxxxx”)被调用。


3)确认so库有没有这个方法
        使用命令nm -D xxx.so,查看有没有有对应的方法。

最后

以上就是灵巧大侠最近收集整理的关于java.lang.UnsatisfiedLinkError: No implementation found for的全部内容,更多相关java.lang.UnsatisfiedLinkError:内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(130)

评论列表共有 0 条评论

立即
投稿
返回
顶部