我已经做了一个Flutter 翼apply.释放APK约为14MB.我找了一些方法来缩小这个数字,结果发现这个数字是:https://flutter.io/android-release/#enabling-proguard

但我的问题是,第一步how can I get to know all my used additional libraries?是否有任何命令可以了解它们,或者只是我添加到pubspec.yaml中的所有依赖项?

我需要在这个档案里有to implement个吗?

推荐答案

首先,我们将在构建文件中启用收缩和模糊处理.找到位于/android/app/文件夹内的build.gradle个文件,并添加粗体行

android {

    ...

    buildTypes {

        release {

            signingConfig signingConfigs.debug     

            minifyEnabled true
            useProguard true

            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 

        }
    }
}

接下来,我们将创建一个配置,该配置将保留整个Flutter 包装器代码.创建/android/app/proguard-rules.pro个文件并插入其中:

#Flutter Wrapper
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.**  { *; }
-keep class io.flutter.util.**  { *; }
-keep class io.flutter.view.**  { *; }
-keep class io.flutter.**  { *; }
-keep class io.flutter.plugins.**  { *; }

Flutter相关问答推荐

在Riverpod ConsumerWidget中使用文本编辑控制器

我怎样才能判断一个字符串值是否为空(&Q;&Q;)?

如何在扩展其他小部件时访问Ref

如何在用Ffltter成功登录后重定向下一页?

在Ffltter中,我已经使用了Ffltter_BLOC Cupit和Pusher,但当获得新数据时,UI没有更新

Flutter 构建 Web 分段故障 - 无法启动事件处理程序线程

无法在 Flutter 项目中安装最新版本的 image_picker

断言失败:std::move(hal_2_1_verifier).Run(). 初始化,LE音频客户端至少需要Bluetooth音频HAL V2.1

获取通过列表呈现的相同 TextEditingController 的值

像图像一样Flutter 自定义标签

Freezed+BLoc 如何从 BLoc Listener 查看当前状态和特定状态的变量

通过一个具体的例子理解Flutter约束的本质

如何在向下滚动时隐藏顶部卡片并在向上滚动时出现?

Firestore:缓存和读取数据

为什么 orientation == Orientation.portrait 总是正确的,尽管我的设备已经处于横向

我可以使用 Future 来填充Text() 小部件而不是在 Flutter 中使用 FutureBuilder 吗?

将 onSaved(value) 从自定义 TextFormField 小部件传递给另一个?

Flutter Web Responsiveness 效率不高

将容器扩展到安全区域 - Flutter

如何在Flutter 中一次判断共享首选项中是否存在多个值