如何使用 Windows Phone 游戏邀请任务

2012/2/9

使用游戏邀请任务可以显示游戏邀请屏幕,该屏幕允许用户邀请多个玩家加入一个多人游戏会话。邀请是异步发送的。

使用选择器,可以帮助您在 Windows Phone 平台中提供一致的用户体验。有关更多信息,请参阅 Windows Phone 启动器和选择器概述

警告说明警告:

仅当从游戏中调用,且该游戏经批准可在 Windows Phone 上的 Xbox LIVE 中发布时,游戏邀请任务才有效。有关更多信息,请参阅开发 Windows Phone 7 游戏

使用游戏邀请任务

  1. 将以下语句添加到您的代码中。

    Imports Microsoft.Phone.Tasks
    
  2. 声明任务对象。它必须具有页面范围,因此应在页面中的构造函数之前声明它。

    Dim gameInviteTask As GameInviteTask
    
  3. 将以下代码添加到您的页面构造函数中。此代码初始化任务对象,并标识要在用户完成任务后运行的方法。

    gameInviteTask = new GameInviteTask()
    AddHandler gameInviteTask.Completed, AddressOf gameInviteTask_Completed
    
  4. 在应用程序中的所需位置添加以下代码,例如按键点击事件中。为了测试此过程,可以将该代码放置在页面构造函数中。以下是启动任务的代码。

    Try
        gameInviteTask.SessionId = "<my session id>"
        gameInviteTask.Show()
    
    Catch ex As System.InvalidOperationException
    
        MessageBox.Show("An error occurred.")
    End Try
    
  5. 在页面中添加已完成事件处理程序的代码。此代码在用户完成任务后运行。您可以检查邀请是否已成功发送。

    Private Sub gameInviteTask_Completed(sender As Object, e As TaskEventArgs)
    
        Select Case e.TaskResult
    
            'Game logic for when the invite was sent successfully
            Case TaskResult.OK
    
                MessageBox.Show("Game invitation sent.")
    
            'Game logic for when the invite is cancelled by the user
            Case TaskResult.Cancel
    
                MessageBox.Show("Game invitation cancelled.")
    
            'Game logic for when the invite could not be sent
            Case TaskResult.None
    
                MessageBox.Show("Game invitation could not be sent.")
        End Select
    End Sub
    

显示: