3
다음 코드는 디버그 모드 (F5)에서 실행될 때 완벽하게 작동하지만 디버거 (ctl + f5)없이 배포하거나 실행하면 이 제대로 작동하지 않습니다.WinJS System.Launcher가 디버그 모드에서만 작동
행동을 작업 할 때/예상 :는 타일을 클릭하면 눈에 띄게 HTML 페이지를 렌더링하지 않고, 즉시 증기 URL 링크를 실행합니다.이 타일을 클릭하면 응용 프로그램을 실행 만 HTML 페이지를 렌더링 결코 증기 URL을 실행하지 :
동작/작동하지 받았다.
var mydefs = new Object();
mydefs = { url: 'steam://rungameid/200710' };
function launch(url) {
var uri = new Windows.Foundation.Uri(url);
Windows.System.Launcher.launchUriAsync(uri).then(
function (success) {
if (success) {
// File launched
window.close();
} else {
// File launch failed
}
});
}
(function() {
"use strict";
WinJS.Binding.optimizeBindingReferences = true;
var app = WinJS.Application;
var activation = Windows.ApplicationModel.Activation;
app.onactivated = function (args) {
if (args.detail.kind === activation.ActivationKind.launch) {
launch(mydefs.url);
args.setPromise(WinJS.UI.processAll());
}
};
app.oncheckpoint = function (args) {
window.close();
};
app.start();
})();
감사합니다. - 남은 유일한 문제는 디버그에서 실행될 때와 동작이 동일하지 않다는 것입니다. 즉, 앱은 스팀 URL을 실행 한 후에도 실행 중이거나 열려 있습니다. 나는 그것을 이해할 것이라고 확신한다. 이것은 대단한 답변이었습니다. –
이 작동하지만 이상적이지 않습니다. 누구든지 이것이 필요한 기술적 인 이유를 알고 있습니까? – kamranicus
'setImmediate'를 사용하여 고정 될 수 있다고 생각했지만 그럴 것 같지 않습니다. 내 앱이 빠르게 로딩 되었기 때문에 나를 위해 일할 수도 있었지만 더 많이 테스트하고 여전히 작동하지 않는 것으로 나타났습니다. 지금 당장 작동하는 유일한 것은 타임 아웃입니다. – kamranicus