从 Flutter 项目构建 APK 时出错

Posted

技术标签:

【中文标题】从 Flutter 项目构建 APK 时出错【英文标题】:Error When Building APK From Flutter Project 【发布时间】:2020-11-18 16:52:51 【问题描述】:

我在尝试从我的 Flutter 项目构建 APK 时遇到问题。 我使用 appicon.co 创建应用图标。

You are building a fat APK that includes binaries for android-arm, android-arm64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Initializing gradle...                                              1.4s
Resolving dependencies...                                           6.4s
                                                                        
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource compilation failed
  Output:  D:\projects\e-cal app\ECAL appication\ecal\android\app\src\main\res\mipmap-hdpi\ic_launcher.png: error: failed to read PNG signature: file does not start with PNG signature.

  Command: C:\Users\DELL\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\dc6524cdbb29b6d93306387944c512dd\aapt2-3.2.1-4818971-windows\aapt2.exe compile --legacy \
          -o \
          D:\projects\e-cal app\ECAL appication\ecal\build\app\intermediates\res\merged\release \
          D:\projects\e-cal app\ECAL appication\ecal\android\app\src\main\res\mipmap-hdpi\ic_launcher.png
  Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                      76.4s
*******************************************************************************************
The Gradle failure may have been because of AndroidX incompatibilities in this Flutter app.
*******************************************************************************************
Gradle task assembleRelease failed with exit code 1

如何解决这个问题?有人可以帮忙吗。

【问题讨论】:

【参考方案1】:

我不确定,但是在构建时,您应该尝试构建 app bundle,因为它不会占用太多空间,并且会让人们更有可能获得您的应用。

【讨论】:

以上是关于从 Flutter 项目构建 APK 时出错的主要内容,如果未能解决你的问题,请参考以下文章

尝试为 iOS 运行或构建 Flutter 项目时出错

Flutter如何构建APK

Flutter - 生成 Flutter 应用程序 apk 时出错

我正在尝试构建我的 Flutter 项目的 apk,但发生错误并且无法构建

FlashDevelop 为简单项目创建 APK 时出错

在 Android Studio 中构建 APK 文件时出错