First, there is no such thing as a perfect config.lua. You need to build one that fits your specific app and understand the pros and cons of your choice and find what works for you. What you might want to do for a card game could be completely different than what you would do for an Angry Birds type game.
Creating a New Project with Corona’s Welcome Window will give you a baseline project that works for iOS. As for build.settings, look at my inline comments below:
iphone = { xcassets = "Images.xcassets", plist = { CFBundleIconFiles = {}, -- Required! See #1 UILaunchStoryboardName = "MazeBlast", -- Required! See #2 UIStatusBarHidden = true, CFBundleDisplayName = "", -- See #3 CFBundleName = "", -- See #3 }, },
#1 – This is not required since you’re using the xcassets method of including icons. This line should be removed.
#2 – You must use a Storyboard for UILaunchImages. However, this is not the name of your game, it’s the name of the LaunchImage file. Unless you’ve used Xcode to create a storyboard named "MazeBlast.storyboardc file, our default is to call it “LaunchScreen” and the template created when you do a “New Project” will provide you a LaunchScreen.storyboardc file that you can use.
#3 – It is highly recommended that you **DO NOT** include these in build.settings. Instead, let Corona pull the information from the build dialog window and the provisioning profile.
There are other required keys in the plist as well
Here is the iphone section for a game I’m working on:
iphone = { xcassets = "Images.xcassets", plist = { UIApplicationExitsOnSuspend = false, UIPrerenderedIcon=true, UIStatusBarHidden=true, NSCalendarsUsageDescription = "", NSPhotoLibraryUsageDescription = "This app does not access the photo library.", NSCameraUsageDescription = "This app does not use the camera.", UILaunchStoryboardName = "LaunchScreen", } },
As for the config.lua, you should learn as much as you can what the different things mean in config.lua. It’s really helpful to try and digest this post: https://coronalabs.com/blog/2018/08/08/understanding-content-scaling-in-corona/
Rob