flutter优化原则

  1. 代码优化

  • 冗余代码
  • 封装(重复使用3次以上的代码)
  1. 包大小

  • 压缩本地图片(压缩代码在线工具
  • 使用单架构so(android一般都支持,armeabi-v7,所以可以保证有这个架构就行)
    在app/build.gradle
defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.example.flutter_trip"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+        ndk {
+ //            abiFilters "armeabi-v7a","arm64-v8a","x86_64","x86" //只打包flutter所支持的架构,flutter没有armeabi架构的so,加x86的原因是为了能够兼容模拟器
  +          abiFilters "armeabi-v7a" //release 时只打"armeabi-v7包
 +       }
    }
  1. 流畅性优化

  • 按需创建页面(pageView可以将页面按需加载)
  • 按需AutomaticKeepAliveClientMixin(是一把双刃剑,一方面能够缓存数据,减少页面的重新请求数据,另一方面也可能缓存的数据过多,影响速度)
  • 耗时的计算放到独立的Isolate,一个独立的线程里面
  1. 内存优化

  • 之图片:根据控件加载指定分辨率的图片,并不是越清晰的图片越好,越清晰的图片,其需要消耗的内存也需要越大
  • 之列表优化:
    1. 分页加载,
    2. 使用List View.build()来复用子空间(只显示当前可见的listItem,只会把当前可见的放入到内存中,是按需加载的)
  • 之防止内存泄漏,dispose需要销毁的listener(监听器)等
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值