如何关闭javascript metro风格的应用程序?

时间:2012-08-10 12:21:05

标签: javascript windows-8 microsoft-metro

是否有退出Metro风格应用程序的代码?在C#,C ++或VB中,有像CoreApplication.Exit()这样的例子,但我找不到像Javascript这样的东西。

3 个答案:

答案 0 :(得分:3)

一般建议是,的应用提供自己的近似功能。在您的示例中,响应于网络连接丢失而自动关闭将显示为应用程序在此类情况下崩溃。因此,它可能实际上并未通过Windows Store认证(参见requirements,第3.2节关于意外结束的应用程序)。此外,第3.6节禁止应用程序自行关闭,因此您也将失败。

调用window.close将生成一个崩溃报告,该报告显示在Windows应用商店仪表板中,并且会在应用程序崩溃时记录(实际上这可能最终会计入商店中的应用程序 - 不确定,但我不会冒险)。在这种情况下,最好使用MSApp.terminateApp,因为崩溃报告将更加全面(并且您可以包含自己的信息)。尽管如此,MSApp.terminateApp仍应仅用于真正无法恢复的条件。

如果您的某个条件下应用无法继续有效运行,但不是崩溃,本身就像丢失网络连接一样,最好通知用户该情况并让他们决定是否关闭应用程序(通过Alt + F4或自上而下的滑动关闭手势)作为响应。您还应该检测网络连接何时恢复并继续源。这样,应用程序就不会失去状态,可以在停止的地方继续运行,从而提供连续的用户体验。

答案 1 :(得分:2)

Metro风格应用的Application Lifecycle中确实没有明确的“关闭”。

  

通常,用户不需要关闭应用,他们可以让Windows管理   他们。但是,用户可以选择使用关闭关闭应用程序   手势或按Alt + F4。您不能在应用中添加任何用户界面   允许用户关闭您的应用,否则它将无法通过商店   认证过程。

您应该正确处理暂停和恢复,并允许用户控制应用程序的显式关闭(在Windows 8中有一个关闭Metro风格应用程序的手势,不需要像按钮那样提供视觉效果)。

答案 2 :(得分:0)

您可以拨打MSApp.terminateApp功能。 详情请见http://msdn.microsoft.com/pl-pl/library/windows/apps/hh770781.aspx