以编程方式关闭Windows phone app

时间:2016-01-19 17:06:57

标签: c# windows-10 windows-10-mobile windows-10-universal

我正在使用以下代码检查应用程序开头的网络访问

public async void CheckNetwork()
    {
        if (!NetworkAvailabilty.Instance.IsNetworkAvailable)
        {
            MessageDialog Message = new MessageDialog("Network access not available.", "Network Error");
            Message.Commands.Add(new UICommand("Close"));
            await Message.ShowAsync();
            Application.Current.Exit();
        }
    }

这在Windows 10桌面中按预期工作。但是当我在手机中运行应用程序时,它无法关闭应用程序。可能是什么原因以及如何强制关闭我的应用程序?

3 个答案:

答案 0 :(得分:1)

尝试Application.Current.Terminate()而不是Exit()

答案 1 :(得分:1)

作为设计原则,您不应该手动关闭应用。请参阅this link(针对WP8开发人员,但仍然有效)。 但是,如果您正在为自己开发测试应用程序,则可以抛出异常,这是关闭应用程序的唯一方法。

throw new Exception();

如果您的目标是在市场上发布您的应用,请不要这样做:

  

您应用中的未处理异常会在用户的手机和Windows Phone服务器上不必要地消耗资源。   手机会为未处理的异常生成并上传故障转储,以帮助您查找和修复代码中的错误。使您的应用程序崩溃以关闭它会浪费用户的电池电量和网络带宽。

答案 2 :(得分:1)

尝试执行ApplicationView.GetForCurrentView().TryConsolidateAsync()