'Flutter flutter_launcher_icons error: pub finished with exit code 255

I want to create my launcher icon for flutter. My config (pubspec.yaml) looks the following.

...
  # 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"
...

I installed the flutter_launcher_icon via the console (flutter pub add flutter_launcher_icons). Afterwards I added the config (see above) to the pubspec.yaml file and entered the following two commands in the console:

flutter pub get
flutter pub run flutter_launcher_icons:main

as described in the documentation (https://pub.dev/packages/flutter_launcher_icons). But after the second command I get the following error message and pub finished with exit code 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

What do I do wrong?

Thanks!



Solution 1:[1]

Try changing the values of minSdkVersion to 23 and targetSdkVersion to 23. Then just run the following command: flutter pub run flutter_launcher_icons:main

example

Solution 2:[2]

In your project go to android/app/build.gradle and change the minSdkVersion and targetSdkVersion to integer values.

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

Then run the following command

flutter pub get
flutter pub run flutter_launcher_icons:main

Solution 3:[3]

If your app was created using version 2.8.0 of flutter sdk or higher then you might experience this problem too. In the android/app/build.gradle folder of your project you will see this:

minSdkVersion flutter.minSdkVersion
targetSdkVersion flutter.targetSdkVersion

I'm still researching where the values are being sourced from as at this date but to solve the issue replace the first line above with and the issue with app icons shall be solved once you run the commands prementioned.

minSdkVersion 21

For the splash screen image or icon, there's a folder named drawable-v21 in android/app/src/main/drawable-v21 that is where the flutter framework seemingly now manages the splash screen. Uncomment the code and point to your asset therein

Solution 4:[4]

It's interesting but you should also provide an icon for IOS. If you do not include image_path_ios: 'youricon.png', it gives that error.

So even if your app will not be in app store, just write your image path to there.

Solution 5:[5]

To complete understand the issue check this lines in the source code

// remove anything from the line that is not a digit
final String minSdk = line.replaceAll(RegExp(r'[^\d]'), '');

So if you have flutter.minSdkVersion in your build.gradle it won't work. as Gabriel Phelix suggested just use integer.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 RiveN
Solution 2 Vishal_VE
Solution 3 O'neya
Solution 4
Solution 5 Elias Fazel