This is a pretty simple version:
local function onKeyEvent( event ) local phase = event.phase local keyName = event.keyName print( event.phase, event.keyName ) if ( "back" == keyName and phase == "up" ) then if ( composer.getSceneName( "current" ) == "menu" ) then native.requestExit() else if ( composer.isOverlay ) then composer.hideOverlay() else composer.gotoScene( "menu", { effect="crossFade", time=500 } ) end end return true end return false end Runtime:addEventListener( "key", onKeyEvent )