2016-11-06 57 views
2

我试图将ng-click="ionic.Platform.exitApp()"设置为一个按钮,但它不起作用,我也试过ng-click="exitApp()"ng-click="$ionic.Platform.exitApp()",但它也不起作用。离子退出应用程序不工作

我使用的是Ionic Creator,根据这个文档http://ionicframework.com/docs/api/utility/ionic.Platform/它应该很简单,但我不知道如何正确设置这个调整。我也tryied添加一个模块插入离子造物主为:

angular.module('app.exit', []).exit(function($scope) { 

    ionic.Platform.ready(function(){ 
    // will execute when device is ready, or immediately if the device is already ready. 
    }); 

    var deviceInformation = ionic.Platform.device(); 

    var isWebView = ionic.Platform.isWebView(); 
    var isIPad = ionic.Platform.isIPad(); 
    var isIOS = ionic.Platform.isIOS(); 
    var isAndroid = ionic.Platform.isAndroid(); 
    var isWindowsPhone = ionic.Platform.isWindowsPhone(); 

    var currentPlatform = ionic.Platform.platform(); 
    var currentPlatformVersion = ionic.Platform.version(); 

    ionic.Platform.exitApp(); // stops the app 
}); 

添加此模块控制台日志打印:“退出是不是一个函数”

感谢

回答

0

你总是可以尝试使用这个ExitApp Plugin

使用,深受cordova plugin add cordova-plugin-exitapp添加插件,然后将下面的代码添加到您的app.js

angular.module('XYZApp', ['ionic']) 
.run(function($ionicPlatform, $ionicHistory, $rootScope) { 
$ionicPlatform.ready(function() { 

    // For exit on back button press 
    $ionicPlatform.registerBackButtonAction(function(e) { 
    if ($rootScope.backButtonPressedOnceToExit) { 
     navigator.app.exitApp(); // or // ionic.Platform.exitApp(); both work 
    } else if ($ionicHistory.backView()) { 
     $ionicHistory.goBack(); 
    } else { 
     $rootScope.backButtonPressedOnceToExit = true; 
     // "Press back button again to exit" : show toast     
     setTimeout(function() { 
      $rootScope.backButtonPressedOnceToExit = false; 
     }, 2000); // reset if user doesn't press back within 2 seconds, to fire exit 
    } 
    e.preventDefault(); 
    return false; 
    }, 101); 
}); 
} 
0

感谢Chiragh有得玩,

但是这么想的任何工作,我说这样的:到名为exit.js一个新的JS文件

angular.module('XYZApp', []).run(function($ionicPlatform, $ionicHistory, $rootScope) { 
$ionicPlatform.ready(function() { 

    // For exit on back button press 
    $ionicPlatform.registerBackButtonAction(function(e) { 
    if ($rootScope.backButtonPressedOnceToExit) { 
     navigator.app.exitApp(); // or // ionic.Platform.exitApp(); both work 
    } else if ($ionicHistory.backView()) { 
     $ionicHistory.goBack(); 
    } else { 
     $rootScope.backButtonPressedOnceToExit = true; 
     // "Press back button again to exit" : show toast     
     setTimeout(function() { 
      $rootScope.backButtonPressedOnceToExit = false; 
     }, 2000); // reset if user doesn't press back within 2 seconds, to fire exit 
    } 
    e.preventDefault(); 
    return false; 
    }, 101); 
}); 
} 
); 

... 然后,我添加的模块XYZApp成Ionic Creator代码设置Angular模块 最后一步我添加了cordova-plugin-exitapp

我尝试了ng-click =“navigator.app.exitApp()”和ng-click =“ionic.Platform.exitApp( )“,他们都没有工作。

U可以看到这里的项目:https://creator.ionic.io/share/html/2d9b0126751e#/menu/contacto

感谢