Как выйти из приложения на Windows Phone 8 программно

Я создаю приложение, в котором, когда я нажимаю кнопку отмены, приложение должно закрыться. для этого я использовал оператор " navigator.app.exitApp ()" как решение при переполнении стека.

Это решение работает в Android, но не работает в Windows Phone 8. Windows Phone выдает исключение: «Невозможно получить свойство «exitApp» неопределенной или нулевой ссылки».

Я написал следующий код для этого.

cancelLogin: function () {
        var result = DevExpress.ui.dialog.confirm('Do you want to exit ?', 'Confirm Exit');
        result.done(function (dialogResult) {
            try {
                if (dialogResult === true) {
                    navigator.app.exitApp();
                }
            }
            catch (e) {
                DevExpress.ui.dialog.alert(e.message, 'Exception');
            }
        });
   }

это отлично работает в Android, но не работает в Windows Phone. как программно закрыть приложение в windows phone 8??


person Rudresh Bhatt    schedule 16.09.2014    source источник


Ответы (1)


Метод exitApp не поддерживается API-интерфейсами Cordova для Windows Phone 8. Чтобы решить эту проблему, выполните следующий код для платформы Windows Phone 8:

window.external.Notify("DevExpress.ExitApp");

Если вы создаете приложение для Windows Phone с помощью мастера DevExtreme, необходимый код будет сгенерирован автоматически.

    if(device.platform === "win8" && device.phone) {
        defaultLayout = "simple";
        startupView = "Navigation";
        $.each(Application1.config.navigation, function (i, item) { item.root = false; });
        document.addEventListener("deviceready", onDeviceReady, false);
}

function onDeviceReady() {
        document.addEventListener("backbutton", onBackKeyDown, false);
}

function onBackKeyDown() {
     if(Application1.app.canBack()) {
            Application1.app.back();
      }
      else {
            if(window.external) {
                window.external.Notify("DevExpress.ExitApp");
            }
        }
}

Спасибо,

person Rudresh Bhatt    schedule 16.09.2014