集成融云的时候,运行时报错 couldn't find "libflutter.so"

简单的说就是没有找到 flutter.so的库,为什么会这样子呢?因为我在集成融云的时候,有指明使用,很多的so库:

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

但实际和flutter一起打包编译的时候,flutter并没有每个平台都编译成flutter.so的库,所以实际运行的时候,就会出错。

解决方案:

  1. 打开你的 android 工程的主 module(默认是app) 下的 build.gradle
  2. 修改 abiFilters 字段, 只指定单一架构. 针对手机的应用推荐使用 "armeabi-v7a"; 针对平板的应用推荐使用x86

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

 

开发小技巧:如何在android studio中直接查看打包的apk libs下是否有so库:Bulid -> Analyze APK

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

 

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

 

实际测试了一下:一个空的flutter的项目,debug包:

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

release包:

Flutter 解决运行时错误 java.lang.UnsatisfiedLinkError...couldn't find "libflutter.so"

 

更改配置:

        buildTypes {
            debug {
                ndk {
                    abiFilters "x86","x86_64","arm64-v8a"
                }
            }
            release {
                ndk {
                    abiFilters "armeabi-v7a"
                }
            }
        } 

 

参考资料:

https://juejin.im/post/5c2260e9e51d45778a5c8cd2

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-27
  • 2022-12-23
  • 2021-11-29
  • 2021-08-02
  • 2021-07-30
  • 2022-12-23
猜你喜欢
  • 2021-08-21
  • 2022-01-05
  • 2021-04-27
  • 2022-12-23
  • 2022-01-07
  • 2021-11-18
  • 2021-05-08
相关资源
相似解决方案