Flutter环境配置要点

修改pub镜像地址:

export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

修改项目中的build.gradle文件(2处):

repositories {
    //google()
    //jcenter()
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/jcenter' }
    maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
}

修改全局的flutter.gradle文件:

此修改在执行flutter upgrade后会被覆盖。

repositories {
    //google()
    //jcenter()
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/jcenter' }
    maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
    }

修改android sdk位置:

flutter config --android-sdk c:/android-sdk
flutter config --android-studio-dir c:/android-studio-4.1.1

若flutter build apk打包时报错:

使用flutter build apk --verbose查看原因
遇到的一种情况是asset里的图标造成的,需要执行下面的命令:

flutter build apk --verbose --no-tree-shake-icons

减小apk尺寸

1、打包时添加--analyze-size参数可查看各个依赖包的大小,视情况可以去掉或替换一些依赖包;

2、在Android Studio里安装CMake和NDK(版本号20.1.x,更高版本去掉了一些toolchain所以打包时报错缺少arm-linux-androideabi,见这个issue),这样打包时会stripping以便减小apk体积;

注:实际测试减尺寸效果不明显

3、分架构打包,目前主流机型是arm64-v8a:

flutter build apk --verbose --no-tree-shake-icons --split-per-abi

4、混淆代码
打包时加上--split-debug-info参数,起到混淆代码的作用,同时能够减小apk体积。实测从8.7MB减小到8.2MB。

flutter build apk --verbose --no-tree-shake-icons --split-per-abi --release --target-platform android-arm64 --split-debug-info=/tmp/myapp/symbols
欢迎转载
请保留原始链接:https://bjzhanghao.com/p/2368