Приложение Win 8 Metro не приостанавливается должным образом / Cert Kit не работает

Мое приложение Metro на основе Javascript/HTML завершено до сих пор, но я не могу заставить его правильно приостановить работу.

Диспетчер задач и Cert Kit сообщают мне, что мое приложение не приостанавливается.

Я понятия не имею, что я делаю неправильно, поскольку, насколько я понял, мне просто нужно установить EventListener, и функция, вызываемая таким образом, должна завершиться достаточно быстро.

Я пытался установить EventListener по-разному:

app.addEventListener("suspending", onsuspend, false);

app.addEventListener("checkpoint", onsuspend, false);

app.oncheckpoint = function (args) {}

Я оставил функцию onsuspend либо совсем пустой, либо просто написал в ней это

var stateObject = new Object();

app.sessionState.stateObject = stateObject;

без дополнительного кода.

Это простая игра, которую я рисую прямо на холсте, я не использую никаких других ресурсов, таких как картинки или прочее, что мне может понадобиться для выпуска...

И да, я понял, что приложение отладки не будет приостановлено, пока я не нажму кнопку приостановки в Visual Studio.


Итак, теперь комплект сертификации приложений для Windows проверяет мое приложение без какой-либо обработки приостановки/возобновления, как если бы я настроил его с первой попытки...

Так что я до сих пор понятия не имею, что пошло не так раньше.


person Dreiven    schedule 20.09.2012    source источник
comment
Итак, теперь комплект сертификации приложений для Windows проверяет мое приложение без какой-либо формы обработки приостановки/возобновления, как будто я настроил его с первой попытки... Так что я до сих пор понятия не имею, что пошло не так раньше.   -  person Dreiven    schedule 04.01.2013


Ответы (1)


Вы можете пройти WACK с чем-то очень простым. Попробуйте например...

function resuming() {
    console.log('resuming'); // not needed just for debugging
}


function suspending() {
    console.log('suspending');  // not needed just for debugging
}

var webapp = Windows.UI.WebUI.WebUIApplication;

webapp.addEventListener("resuming", resuming, false);
webapp.addEventListener("suspending", suspending, false);
person JP Alioto    schedule 21.09.2012