Disable hardware back button in Ionic application? Disable hardware back button in Ionic application? angularjs angularjs

Disable hardware back button in Ionic application?


Finally found the answer on this Ionic Forum thread:

$ionicPlatform.registerBackButtonAction(function () {  if (condition) {    navigator.app.exitApp();  } else {    handle back action!  }}, 100);

$ionicPlatform.registerBackButtonAction allows to completly overwrite back button behavior. First param is a callback function and the secondone a priority (only the callback with the highest priority gets executed).


$ionicPlatform.registerBackButtonAction(function (event) {    event.preventDefault();}, 100);

this will prevent back button functionality.


To expand upon David D's answer I have included the go back implementation.

Put this in your applications .run function:

$ionicPlatform.registerBackButtonAction(function (event) {  if ($ionicHistory.currentStateName() === 'someStateName'){    event.preventDefault();  } else {    $ionicHistory.goBack();  }}, 100);

This will not work in controllers, it is application wide.