1

我正在制作这个游戏,其中涉及两个在线玩家。如果一方退出申请,则应通知另一方。我正在使用 onsuspend 事件,但它不起作用。这是我的代码:

    public MainPage()
    {
        this.InitializeComponent();

        Application.Current.Suspending += Current_Suspending;
        // and a bunch of other stuff
    }

    private async void Current_Suspending(object sender, Windows.ApplicationModel.SuspendingEventArgs e)
    {
        await game.leaveGame();
    }

任何帮助将不胜感激。我 100% 确定 game.leaveGame() 函数有效——我已经测试过了。

4

1 回答 1

0

一旦您从暂停事件中返回,应用程序就会暂停,因此在您的情况下,异步方法 game.leaveGame() 将不会完成。尝试将您的代码更改为(假设 game.leaveGame 是同步方法):

public MainPage()
{
    this.InitializeComponent();

    Application.Current.Suspending += Current_Suspending;
    // and a bunch of other stuff
}

private void Current_Suspending(object sender, Windows.ApplicationModel.SuspendingEventArgs e)
{
    game.leaveGame();
}

有关应用程序生命周期的更多详细信息,请点击此处

于 2013-04-28T21:09:45.427 回答