I’m developer here, so, let me bring some final clarification here.
The Corona runtime and its Lua scripts are tied to the UI. So, when your app gets suspended, the Corona runtime gets suspended too. Attempting to invoke anything in Corona’s Lua state while the app is in the background will likely run into some undefined behavior because all of Corona’s features/services such as timers and access to the display are suspended. This is by design and we have zero plans on changing this. This is because Corona’s primarily designed to do hardware accelerated rendering.
Now, since you are an Enterprise user, it is possible for you to do things in the background on Android via pure Java code outside of Corona. You just can’t interact with Corona while in the background until your app is back in the foreground again. If your backgrounded process needs to send any kind of feedback to Corona and its Lua scripts, then you’ll have to queue those operation and only execute them once your app is in the foreground again. We do the same in our own internal code on Android. You can leverage our “CoronaRuntimeTaskDispatcher” Java class if you want, which automatically queues your tasks and only executes them once your app is in the foreground and synced to the Corona runtime thread… or dumps them once the Corona runtime and its activity is destroyed.