刚开始接触Flutter,记录遇到的坑
打包的时候找不到libflutter.so文件导致安装flutter项目崩溃
这是对应平台的so文件不存在造成的,方法是只选择一种平台,一般手机对支持armv7架构,所以在app的build.gradle下设置ndk过滤就好
1 2 3 4 5
| ndk {//选择要添加的对应cpu类型的.so库。 abiFilters 'armeabi-v7a' // abiFilters 'arm64-v8a' // 还可以添加 'x86', 'x86_64', 'mips', 'mips64', 'armeabi','armeabi-v7a', 'arm64-v8a' }
|
但是有个问题,最新的flutter默认只打64位的包,armv7的也会找不到那个so,这个时候就需要改flutter的编译环境了
在以下目录找到flutter.gradle
.../flutter/packages/flutter_tools/gradle/flutter.gradle
1 2 3 4 5 6 7 8 9 10 11 12 13
| 修改为一下代码 private List<String> getTargetPlatforms() { return DEFAULT_PLATFORMS // if (!project.hasProperty('target-platform')) { // return DEFAULT_PLATFORMS // } // return project.property('target-platform').split(',').collect { // if (!PLATFORM_ARCH_MAP[it]) { // throw new GradleException("Invalid platform: $it.") // } // return it // } }
|
如有意见和建议,及时沟通。