【问题标题】:Flutter flutter_launcher_icons error: pub finished with exit code 255Flutter flutter_launcher_icons 错误:pub 以退出代码 255 结束
【发布时间】:2022-01-06 18:35:55
【问题描述】:

我想为颤振创建我的启动器图标。我的配置 (pubspec.yaml) 如下所示。

...
  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^1.0.2
  flutter_spinkit: ^5.1.0
  url_launcher: ^6.0.17
  http: ^0.13.4
  intl: ^0.17.0
  flutter_launcher_icons: ^0.9.2

flutter_icons:
  android: true
  ios: true
  image_path: "assets/logo_blue.png"
...

我通过控制台 (flutter pub add flutter_launcher_icons) 安装了 flutter_launcher_icon。之后我将配置(见上文)添加到 pubspec.yaml 文件中,并在控制台中输入以下两个命令:

flutter pub get
flutter pub run flutter_launcher_icons:main

如文档 (https://pub.dev/packages/flutter_launcher_icons) 中所述。但是在第二个命令之后,我收到以下错误消息,并且 pub 以退出代码 255 结束。

  ════════════════════════════════════════════
     FLUTTER LAUNCHER ICONS (v0.9.1)
  ════════════════════════════════════════════


✓ Successfully generated launcher icons
Unhandled exception:
FormatException: Invalid number (at character 1)

^

#0      int._handleFormatError (dart:core-patch/integers_patch.dart:129:7)
#1      int.parse (dart:core-patch/integers_patch.dart:55:14)
#2      minSdk (package:flutter_launcher_icons/android.dart:309:18)
#3      createIconsFromConfig (package:flutter_launcher_icons/main.dart:94:47)
#4      createIconsFromArguments (package:flutter_launcher_icons/main.dart:60:7)
#5      main (file:///C:/Users/chris/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_launcher_icons-0.9.2/bin/main.dart:6:26)
#6      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:295:32)
#7      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:192:12)
pub finished with exit code 255

我做错了什么?

谢谢!

【问题讨论】:

    标签: flutter dart flutter-dependencies dart-pub pubspec


    【解决方案1】:

    尝试将 minSdkVersion 的值更改为 23,将 targetSdkVersion 的值更改为 23。然后只需运行以下命令:flutter pub run flutter_launcher_icons:main

    【讨论】:

    • 嗨,Gabiel,感谢您的回答,但它仍然无法正常工作。我仍然遇到同样的错误。
    【解决方案2】:

    在您的项目中,转到 android/app/build.gradle 并将 minSdkVersion 和 targetSdkVersion 更改为整数值。

    minSdkVersion 21
    targetSdkVersion 29
    versionCode flutterVersionCode.toInteger()
    versionName flutterVersionName
    

    然后运行以下命令

    flutter pub get
    flutter pub run flutter_launcher_icons:main
    

    【讨论】:

    • 您好 Vishal_VE,感谢您的回答。当我更改值时,出现两个错误(无法解析符号“属性”:1 和 Cannor 解析符号“GradleException”:11)。当我在更改后运行两个命令时,我仍然得到相同的错误:(。
    【解决方案3】:

    更改 minSdkVersion 编号对我不起作用,而且在 flutter_launcher_icons gitanswer 中似乎存在错误。如果我从配置中删除 android:true,它会成功创建 iOS 图标。

    我现在手动创建并替换了 android 的图标。如果您想这样做,请在您的项目中进入 projectname/android/app/src/res 并替换以 mipmap 开头的文件夹中的 *png 文件...

    兄弟, 克里斯

    【讨论】:

    • 您需要将minSdkVersion至少设置为19
    • 我的工作在删除 'android:true' 后工作,然后我添加 'ios:true' 再次运行命令并且它工作。你需要'minSdkVersion:21'(我的是21,它应该也适用于其他人)否则它会出错。如果在 Gradle 文件中使用 'flutter.minSdkVersion',会抛出错误 'Unhandled exception: FormatException: Invalid number (at character 1)'
    【解决方案4】:

    如果您的应用是使用 2.8.0 或更高版本的 flutter sdk 创建的,那么您也可能会遇到此问题。在项目的 android/app/build.gradle 文件夹中,您将看到:

    minSdkVersion flutter.minSdkVersion
    targetSdkVersion flutter.targetSdkVersion
    

    截至目前,我仍在研究值的来源,但要解决此问题,请将上面的第一行替换为,一旦您运行前面提到的命令,应用图标的问题就会得到解决。

    minSdkVersion 21
    

    对于闪屏图像或图标,在 android/app/src/main/drawable-v21 中有一个名为 drawable-v21 的文件夹,它现在似乎是 Flutter 框架管理闪屏的地方。取消注释代码并在其中指向您的资产

    【讨论】:

      【解决方案5】:

      这很有趣,但您还应该为 IOS 提供一个图标。如果您不包含 image_path_ios: 'youricon.png',则会出现该错误。

      因此,即使您的应用不在应用商店中,也只需将您的图片路径写入那里即可。

      【讨论】:

        猜你喜欢
        • 2023-04-05
        • 1970-01-01
        • 2021-07-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-26
        • 1970-01-01
        相关资源
        最近更新 更多