방법: Windows Phone의 게임 초대 작업 사용

2012-02-09

게임 초대 작업을 사용하여 사용자가 플레이어를 멀티플레이어 게임 세션에 초대할 수 있는 게임 초대 화면을 표시할 수 있습니다. 초대장은 비동기적으로 전송됩니다.

선택기를 사용하면 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. Completed 이벤트 처리기에 대한 코드를 페이지에 추가합니다. 이 코드는 사용자가 작업을 완료한 후 실행됩니다. 초대를 성공적으로 보냈는지 여부를 확인할 수 있습니다.

    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
    

표시: