Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

iOS: Missing CFBundleIconName and asset catalog #1504

Closed
MagicalTux opened this issue Nov 3, 2020 · 7 comments
Closed

iOS: Missing CFBundleIconName and asset catalog #1504

MagicalTux opened this issue Nov 3, 2020 · 7 comments
Labels
blocker Items that would block a forthcoming release bug Something isn't working

Comments

@MagicalTux
Copy link
Contributor

Describe the bug:

When building for iOS and deploying an app, an error is returned by Apple:

ITMS-90713: Missing Info.plist value - A value for the Info.plist key 'CFBundleIconName' is missing in the bundle '...'. Apps built with iOS 11 or later SDK must supply app icons in an asset catalog and must also provide a value for this Info.plist key. For more information see http://help.apple.com/xcode/mac/current/#/dev10510b1f7.

This issue was found while working on issue #1497

To Reproduce:

Steps to reproduce the behaviour:

  1. Build for iOS
  2. Deploy
  3. Email from Apple will arrive with the error message

Device (please complete the following information):

  • OS: MacOS
  • Version: 10.15.7
  • Go version: 1.15.3
  • Fyne version: 2d9a597
@MagicalTux
Copy link
Contributor Author

Looking at another project the following is found:

project.pbxproj file contains the following line under buildSettings:

ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;

A folder Assets.xcassets/AppIcon.appiconset exists containing:

  • Icon png files in various sizes
  • Contents.json file:
{
  "images" : [
    {
      "size" : "20x20",
      "idiom" : "iphone",
      "filename" : "Icon-App-20x20@2x.png",
      "scale" : "2x"
    },
    ....
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

@MagicalTux
Copy link
Contributor Author

MagicalTux commented Nov 3, 2020

Additionally, found in project.pbxproj under objects:

/* Begin PBXBuildFile section */
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
...
/* Begin PBXFileReference section */
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };

under children:

97C146FD1CF9000F007C117D /* Assets.xcassets */,

under PBXResourcesBuildPhase files:

97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,

@andydotxyz
Copy link
Member

This is great help thanks. I guess we'd need to make sure that the idiom and scale are set correctly for 4 required icon files that we bundle?

@andydotxyz andydotxyz added blocker Items that would block a forthcoming release bug Something isn't working labels Nov 3, 2020
@MagicalTux
Copy link
Contributor Author

MagicalTux commented Nov 3, 2020

The following idiom/sizes are present in my example:

  • iphone
    • 20x20 2x 3x
    • 29x29 1x 2x 3x
    • 40x40 2x 3x
    • 60x60 2x 3x
  • ipad
    • 20x20 1x 2x
    • 29x29 1x 2x
    • 40x40 1x 2x
    • 76x76 1x 2x
    • 83.5x83.5 2x
  • ios-marketing
    • 1024x1024 1x

The png file has the scale applied (for example 20x20@2x will be a 40x40 png file)

@andydotxyz
Copy link
Member

These hints are cracking thanks so much @MagicalTux - I have a proof of concept asset compiler locally and running through the various verification / upload steps now.

@andydotxyz
Copy link
Member

OK! I hit some bitcode issues, but this is now working :)

Screenshot 2020-11-15 at 09 03 36

@andydotxyz andydotxyz mentioned this issue Nov 15, 2020
3 tasks
@andydotxyz
Copy link
Member

Merged in release/v1.4.x ready for next point release :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocker Items that would block a forthcoming release bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants