Missing CFBundleIconName in Xcode9 iOS11 app release

后端 未结 21 712
迷失自我
迷失自我 2020-12-02 10:47

I\'m struggling to release a new version of our app using Xcode 9 built with iOS 11 SDK. Archiving and uploading the binary goes well without any issue. The build appears in

相关标签:
21条回答
  • 2020-12-02 11:37

    Now in IOS 11, we need to add a new icon in our project of size 1024x1024.

    Ensure that the Icon files are removed from resources folder in source code bundle and also Icons files key in info.plist is cleared. Also add CFBundleIconName key in plist as below

    Info.plist :

    <key>CFBundleIconName</key>
    <string>AppIcon</string>
    

    Also in the Project - Target—>Build Settings —> Asset Catalog Compiler - section, make sure the name of the asset catalog that contains the icons is shown in Asset Catalog App Icon Set Name.

    0 讨论(0)
  • 2020-12-02 11:37

    I have finally come up with a clean solution to this problem which requires adding no keys to info.plist such as CFBundleIconName. I did this while updating an old app in the app store to build against SDK 11.2 (and believe me there was a fair amount of frustration involved). I'm using Xamarin in Visual Studio on a PC but this solution should work in any other IDE or framework e.g. XCode. The gist of the solution is that info.plist file and Resources folder no longer need to play any role as far as app icons and launch images are concerned. In fact you can remove CFBundleIconFiles key from info.plist file and it will not make any difference to your project.

    Here are the steps you need to follow:

    1. Make a copy of your app icons and launch images and store them in a separate location.
    2. For a clean start delete references to app icons and launch images from info.plist, which means deleting values under CFBundleIconFiles key.
    3. Delete app icons and launch images from Resources folder.
    4. Use delete option to delete any 'Assets' or 'Media' you have declared under 'Asset Catalogs'.
    5. A folder by the name of Assets.xcassets or Media.xcassets (or similarly named .xcassets folders) might still be present in your project. They would either be outside or inside the Resources folder. Delete all .xcassets folders.
    6. Now open your project file in an editor like notepad (i.e. .csproj in Visual Studio) and see if there are any references pointing to files in .xcassets folder. Delete all such references. Also check that there are no references pointing to app icons or launch images under Resources folder in this file and delete them as well.
    7. Check to make sure XSAppIconAssets and XSLaunchImageAssets keys are no longer present in info.plist. Delete them if they are still present.
    8. At this point you have removed any previous files or references to your app icons and launch images from your project. If they are still present please go back and delete them. Now to start afresh create a new 'Asset' or 'Media' under 'Asset Catalogs' which creates a .xcassets folder in your project. Copy your app icons (and launch images if required) from step 1 into respective folders under your new .xcassets folder. Make sure all required images are included.
    9. Check to make sure info.plist now contains XSAppIconAssets (and XSLaunchImageAssets if needed) key values for the new 'Asset' you have created. Your project file (which is .csproj in Visual Studio) should now contain references to each image you added to your new 'Asset'. There is no need for any extra images than those required by the project. I would suggest deleting any extra images from your Assets.
    10. If you added a key named CFBundleIconName as mentioned in other solutions then please delete this key from info.plist. It is not required. Now you are ready to submit your app to the store.
    0 讨论(0)
  • 2020-12-02 11:39

    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 older projects without assets catalog there will be issues while submitting to Appstore

    In Project —> Target Properties - General tab—> App Icons and Launch Image. App Icons —> Select Use Asset catalog Then it will ask to convert (migrate) with an alert and creates a .xcassets file. Check the box to convert launch images too.
    When you are done the App Icons Source and the Launch Images Source will have names in the dropdown list. Add the app icons and other icons to it

    0 讨论(0)
  • 2020-12-02 11:40

    I too have encountered the "Missing Info.plist value - A value for the Info.plist key CFBundleIconName is missing in the bundle..." error and wanted to leave a concise answer to hopefully help the next person.

    The app was not using an asset catalog. Although that is not what this error says, that is what is required to resolve this issue, but how you add the values is important. It is not enough to manually add this missing key\value to the .plist; there is more to it than that. You also need to remove the CFBundleIcons value from your .plist. This can be done manually, but I recommend using the XCode interface to edit this through the Project Properties - General App Icons and Launch Image. That is how I got mine to work.

    Below is a screen shot of the changes this made to my .plist.

    App Icons and Launch Images

    Add a new Asset Catalog to your project if you do not already have one.
    Click the app name at the top of your Navigator window
    Select the GENERAL tab
    Scroll down to the "App Icons and Launch Images" section
    Click the "use an asset catalog" button
    NOTE: I had created my own asset catalog and iOS App icon image set, but linking to the existing one didn't work for me as it created a new image set which had empty values\images. I had to delete them all and let this process create them for me. If you are just now adding an asset catalog to resolve this issue, let this process create it for you, don't manually add the image set.

    Click to convert\migrate the app
    After clicking the button, nothing refreshed automatically for me. I navigated away and then back to the settings screen and values were now assigned in the dropdown list.

    Now open your new asset catalog by clicking on it
    Click on the "AppIcon" section and drag your required images to the appropriate locations.

    You will need the 1024x1024 image for the App Store iOS 1024pt icon and any other iPhone\iPad\Universal app required icons. The 1024x1024px image is also known as the Marketing Icon. You cannot submit your app without it.

    You should now be able to archive your app and submit it to the app store.

    0 讨论(0)
  • 2020-12-02 11:41

    I have got the same issue and solved it as follows.

    Here is the step by step guideline.

    Step 1:

    Create an icon with 1024*1024.png

    Step 2:

    Upload this png to the https://www.appicon.build/ website and drag and drop on screen.

    Step 3:

    It will ask you to enter your email address. Enter it and then after few seconds, you will get all the required image sizes into your mailbox. Download that zipped folder and unzipped it.

    Step 4:

    Go back to your project on Xcode and add this unzipped folder(called AppIcon.appconset) into the resources folder in your xcode project.

    Step 5:

    Double click on Asset.xcassets folder and drag and drop required images on the image placeholder for 2x and 3x images from the generated images.

    You are good to go!...

    0 讨论(0)
  • 2020-12-02 11:41

    Every app developer uses the famous "Icon Dog"

    (it's a shame they changed the name!)

    https://itunes.apple.com/us/app/app-icon-set-creator/id1052532083?mt=12

    It's far and away the #1 most popular app used by iOS devs, kind of a cult.

    It immediately solves all problems.

    0 讨论(0)
提交回复
热议问题