Icons, Asset Catalog and Info.plist confusion

前端 未结 3 960
误落风尘
误落风尘 2021-02-09 01:21

I have an app that started life for iOS 5 and has been updated ever since. For iOS 7 I have switched over to using an Asset Catalog for all the resources, which is nice and appe

3条回答
  •  名媛妹妹
    2021-02-09 01:35

    I had also a lot of Problems on this matter - I was constantly getting the error with the missing CFBundleIconName and that my Icons where not found. So here is my story, maybe it will be of help for somebody. By the way, I am using Visual Studio with Xamarin.

    1. Add an Asset Catalogue to your Project with AppIcons (the actual name of the asset is not important but just that it is for the application icons). Add all of the necessary icon sizes. For the 'App Store' icon I have added an icon without a @ in the name as someone in the forums suggested, but I am not sure, if it is 100% necessary. For generating the different icon sizes there are a lot of Websites and tools that can do that for you and you just need to provide the 1024x1024 one. They will generate the rest.

    2. In the Info.plist under 'Visual Assets' and then 'App Icons' set the source to the asset that you have just created.

    3. Now check your Info.plist. Do not open it with an external Editor, because all of your changes will be overwritten once you build your project. Do the following - right mouse click on the Info.plist in the Solution Explorer then select Open With -> Generic PList Editor.

    4. Check that you have the following entries:

      -Property = CFBundleIconName, Type = String. Value = Assets.xcassets/AppIcons.appiconset -Property = XSAppIconAssets, Type = String. Value = Assets.xcassets/AppIcons.appiconset

    5. Note that Visual Studio automatically adds, when it adds something altogether, 'Resources/Assets.xcassets/AppIcons.appiconset' as the Value. But in my case the Asset Catalog was created outside of the Resources folder and therefore, my icons where not found. So, check where your assets folder was created.

    6. CFBundleIconFiles was not needed, because Apple uses the Asset Catalog instead now.

    I hope that I was of some help :)

提交回复
热议问题