This guide outlines how to customize app icons and related assets for
For iOS apps targeting iOS 11 or later, you must include and reference the Images.xcassets
folder as outlined in this section, otherwise your app will be rejected upon submission to the App Store.
For your convenience, a default Images.xcassets
folder is automatically added to all new Corona project templates. The same folder is also bundled with the Corona application itself, in case you need to copy it over to existing projects. It can be found within the Solar2D application folder here:
/Applications/Corona/Resources/Resource Library/iOS/Images.xcassets
To include and reference the Images.xcassets
folder within your Corona project, proceed as follows:
In the Finder, locate (or copy in) the Images.xcassets
folder. Copy the entire folder to your project.
Open the folder and locate the AppIcon.appiconset
folder. This contains the full set of iOS app icons as follows:
File | Size (w×h) |
---|---|
Icon-40.png |
40 × 40 |
Icon-58.png |
58 × 58 |
Icon-76.png |
76 × 76 |
Icon-80.png |
80 × 80 |
Icon-87.png |
87 × 87 |
Icon-120.png |
120 × 120 |
Icon-152.png |
152 × 152 |
Icon-167.png |
167 × 167 |
Icon-180.png |
180 × 180 |
Icon-1024.png |
1024 × 1024 |
AppIcon.appiconset
folder. To avoid potential incompatibilities, your images should be If you're updating an older Corona project or template to use the Images.xcassets
folder, you can simply move the main.lua
)Images.xcassets/AppIcon.appiconset
folder. However, note that you must also add the 1024×1024 Icon-1024.png
Instead of replacing files manually, you may alternatively edit the Asset Catalog directly via Xcode by dragging and dropping it onto the Xcode dock icon. This will open a detailed UI with ability to add supplemental icons, see warnings about improperly sized or formatted icons, etc.
AppIconTV.brandassets
and LaunchImageTV.launchimage
folders within the Images.xcassets
folder. This will not affect how icons are generated for iOS.Next, you must reference and link up the Images.xcassets
folder with the Corona project:
Open the Corona project's build.settings
file.
If you're updating an older Corona project or template to use the icons within Images.xcassets/AppIcon.appiconset
CFBundleIconFiles
table settings
→ iphone
→ plist
→ CFBundleIconFiles
)
settings = { iphone = { plist = { UILaunchStoryboardName = "LaunchScreen", CFBundleIconFiles = { "Icon-40.png", "Icon-58.png", "Icon-76.png", "Icon-80.png", "Icon-87.png", "Icon-120.png", "Icon-152.png", "Icon-167.png", "Icon-180.png", }, }, }, }
settings
→ iphone
xcassets = "Images.xcassets"
iphone
table, not within its plist
child table.settings = { iphone = { xcassets = "Images.xcassets", plist = { UILaunchStoryboardName = "LaunchScreen", }, }, }
build.settings
file.That's it! With all of these aspects in place, Corona will build the app using the specified Xcode Asset Catalog (Images.xcassets
) to generate assets, icons, and plist
entries.