Mine is a simple one-player game so there is no infrastructure to do anything fancy. Not ported to anything native, just running the desktop game on the phone.
Better than a frozen condition if the game crashes, I wrapped my mainline update loop in a try/catch. My thought is a user could send me a screenshot which might yield a clue about why it failed.
I wonder what you are doing or would advise? Thanks!
try {
// all the things
} catch (err) {
if (didFail) { // we need one more frame update to display the error
throw ("the wheels, they have come off the wagon again")
}
console.log("ERROR " + err);
console.log("STACK " + err.stack);
didFail = true;
var ratfarts = this.add.graphics();
ratfarts.fillStyle(0x0000FF, 1);
var fail = new Phaser.Geom.Rectangle(0,0,800,600);
ratfarts.fillRectShape(fail);
this.add.text(0, 40, err);
this.add.text(0, 100, err.stack);
}