Wednesday FAQs: Corona Build Servers

Wednesday FAQs: Corona Build Servers

It’s Wednesday and time for another frequently asked questions (FAQs) session. Here are some FAQs about Corona Build Servers.

1. Is there a difference between developer and distribution builds for iOS?

Yes, with distribution builds (App Store and adhoc), Apple’s PNGCRUSH utility is called to compress the PNG files. To save time, the utility is not called when doing a developer build.

We’ve had some reported cases where images were mangled when submitted to the App Store and rejected by Apple. The issue seems to be a problem with how some PNG images are formatted that causes problems when PNGCRUSH is used to compress the images. If this happens to you, the solution is to open the PNG file in Photoshop (or a similar photo editor) and re-save the image. You can probably do the same thing using Mac’s Preview program. It’s always a good idea to test an adhoc build of your app because that also calls PNGCRUSH to compress the images.

2. Why do I need an Internet connection to build my project?

The Corona servers host multiple versions of the Corona SDK. This includes all the public builds as well as daily builds. When you do a build on the Corona Simulator, it sends the build information to the Corona servers so it can pick the correct template (build file) and plugins. Having the build templates and plugins in the cloud, allow us to update the files as needed and add additional plugins as they become available.

3. When I do a build, is the source code and all my assets sent to Corona’s servers?

Your project code is converted into Lua byte code and sent to Corona servers so it can be packaged with the template file for the associated build. None of project’s assets are sent to the Corona servers. After the Lua code has been linked to the template, it’s sent back to the client (Corona Simulator) where all the project’s assets are added to the project and the app is digitally signed.

4. My hard drive failed and I lost my Corona project. Can I get a copy that was sent to your servers when I did a build?

No, as mentioned in the previous answer, only the Lua byte code for your project is sent to the Corona servers. This byte code is not human readable plus it doesn’t contain any comments you may have in your code nor are any of the project assets included. None project files are saved on our servers once it’s send back to the client to build the project locally.

5. Are daily builds stable enough to use if I want to distribute to the App Store?

Daily builds contain new features and bug fixes. If you want to publish your app with a daily build, it’s best to test as much as you can to ensure there are no bugs. We do try to fix regression bugs in daily builds as soon as we are aware of them, so it’s a good idea to hold off and monitor the forums and the daily build summary page for bug reports and fixes.

That’s it for today’s questions. I hope you enjoyed them and even learned a few things.