We’ve been listening to your feedback and hope we’ve come up with a scheme that works well for both newcomers to Corona and for the old hands who know what they’re doing. It allows control at both the Simulator and application levels.
There is now a setting in the Simulator preferences called Show Runtime Errors which defaults to on and which causes runtime errors to always pop up when the application is run in the Simulator. If you don’t like this or it doesn’t fit with your workflow you can turn it off. It’s global for all applications.
We also added a setting to config.lua that can be used to control the display of errors in applications running on the device. It’s called showRuntimeErrors and takes a boolean value ( true or false ). It defaults to off (false)_. _If you explicitly set showRuntimeErrors to false in your config.lua that will override the preference in the Simulator for that application (to turn it off, just comment it out rather than setting it). Remember that turning off the display of errors doesn’t mean they aren’t happening and changing the way your app works, almost certainly in bad ways. We want you to know about errors because they are causing your users’ mileage to vary and diminishing their enjoyment of your apps.
Note that even if you turn off the display of runtime errors, the unhandledError listener still gets called but it doesn’t matter what you return from it, the popup error is never displayed. This allows you to implement your own error reporting if you want to. Having an unhandledError listener is completely optional.
In writing this I’ve realized that I’ve neglected the documentation for this so I better get to that. Let me know what you think of the new scheme.