apache / cordova-docs

Apache Cordova Documentation
https://cordova.apache.org/
Apache License 2.0
350 stars 554 forks source link

Can't run app with single icon configuration #1145

Open Birowsky opened 3 years ago

Birowsky commented 3 years ago

Bug Report

Problem

cordova run ios fails after adding <icon src="resources/icon.png" /> to config.xml. I've provided the resources/icon.png file, relative to the Cordova project root.

CLI error message:

The following build commands failed: ..../cordova/platforms/ios/build/emulator/TheWorkoutApp.app ..../cordova/platforms/ios/TheWorkoutApp/Images.xcassets (1 failure) xcodebuild: Command failed with exit code 65 error Command failed with exit code 65.

Environment, Platform, Device

cordova 10.0.0 cordova-ios 6.1.1 Mac 11.1 (intel)

Checklist

breautek commented 3 years ago

iOS doesn't support a single-icon configuration. You must provide icons of different sizes. These icons are used by the OS in different scenarios. The OS expects these icons to be precisely in specific resolutions with specific filenames.

Useful Links:

Closing as not a bug / won't fix.

Birowsky commented 3 years ago

Oh, I was just following the documentation here which says:

The following configuration can be used to define a single default icon which will be used for all platforms.

<icon src="res/icon.png" />
breautek commented 3 years ago

I guess that warrants reopening this to at least investigate what is correct.

Using a single icon definitely shouldn't be recommended though. There is reasons why platforms expects specific sizes.

Birowsky commented 3 years ago

They certainly do, but as you might know, when working natively, they provide tools to generate all other icons variants based on a single one.

If Cordova would do that for all platforms, that'd be bery bery nice : )

dpogue commented 3 years ago

You must provide all the icons sizes that iOS requires. The docs are incorrect about being able to specify a single icon.

While it would be great for Cordova to automatically generate icons, that's a lot of code to test and maintain and update every time Apple changes their requirements, and I don't realistically think we should take on that additional maintenance burden.

breautek commented 3 years ago

While it would be great for Cordova to automatically generate icons, that's a lot of code to test and maintain and update every time Apple changes their requirements, and I don't realistically think we should take on that additional maintenance burden.

There are already third-party tools that does just this as well. Ionic maintains a tool which appears to be relatively up to date: https://www.npmjs.com/package/cordova-res

Birowsky commented 3 years ago

I understand, folks. I'd rather have you focus on substantial things. I guess this issue boils down to adjusting the docs a bit.

breautek commented 3 years ago

I understand, folks. I'd rather have you focus on substantial things. I guess this issue boils down to adjusting the docs a bit.

Agreed, I'll move this issue over to our docs repo.

bex-buri commented 1 month ago

I guess that warrants reopening this to at least investigate what is correct.

Using a single icon definitely shouldn't be recommended though. There is reasons why platforms expects specific sizes.

I spent so much time on this only to find out the documentation hasn't been updated in 3 years. It's still up there saying you can use a single icon for both platforms and IOS keeps complaining.