Everyone,
I’ve looked into this issue. The native.requestExit() function will actually work if your app has pages to navigate back to, but it won’t do anything if your app has no more pages in its history. That is, it won’t exit the app. After refreshing my brain as to why, it’s because WP8’s native APIs does provide a nice means of exiting an app like Android. The only native WP8 API available to exit the app is to forcefully quit the app, much like how os.exit() works now.
But that said, I’ve implemented a bit of a hack-ish solution that is the closest equivalent to exiting the app like Android. Calling native.requestExit() will be non-blocking like Android, all of your app’s XAML controls will be “Unloaded”, you’ll receive an “applicationExit” event in Lua, and then the app will be forcefully terminated. Unfortunately, you’ll never receive a “Closing” event in your “App.xaml.cs” because it’s been forcefully exited (if you’re even using it). This forceful quit will be a bit noticeable because your app won’t do the slide-out animation when exiting out, which is what you normally see when pressing the back key. Instead, it simply blacks-out and the previous screen appears. Because of this, I highly recommend that you let your app be gracefully closed via the Back key event by *not* returning true in your Lua key event listener if you can.
(Welcome to the challenges of cross-platform development.)
A new build of CoronaCards for WP8 should be made available to you all later today.
Thanks for bringing up this issue.