XGameInviteEventCallback

应用程序针对游戏邀请事件定义的回调。

语法

void XGameInviteEventCallback(  
         void* context,  
         const char* inviteUri  
)  

参数

context _In_opt_
类型:void*

我们传递到 XGameInviteRegisterForEvent 的上下文。

inviteUri _In_
类型:char*

用于加入游戏会话的 URI。

注意

XSAPI 知道如何使用该 URI。

返回值

类型:void

备注

要注册游戏邀请事件的回调,请调用 XGameInviteRegisterForEvent。 此函数使用指向 XGameInviteEventCallback 的指针作为参数。

要取消注册游戏邀请事件的回调,请调用 XGameInviteUnregisterForEvent

下面的代码示例注册游戏邀请回调。

#include <XTaskQueue.h>
#include <XGameInvite.h>  
  
XTaskQueueHandle g_taskQueue;  
XTaskQueueRegistrationToken g_gameInviteEventToken;  
  
void OnGameInvite(void* context, const char* inviteUri)  
{  
    if (inviteUri != nullptr)
    {
        std::string inviteString(inviteUri);
        auto pos = inviteString.find("handle=");
        auto inviteHandeId = inviteString.substr(pos + 7, 36);
        // Now call XblMultiplayerManagerJoinLobby if using MPM
        // or call XblMultiplayerWriteSessionByHandleAsync if using MPSD APIs
    }
}  
  
void InitializeGame()  
{  
    XGameInviteRegisterForEvent(g_taskQueue, nullptr, OnGameInvite, &g_gameInviteEventToken);  
}  
  
void ShutdownGame()  
{  
    XGameInviteUnregisterForEvent(g_gameInviteEventToken);  
}  

要求

头文件:XGameInvite.h

库:xgameruntime.lib

支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机

另请参阅

XGameInvite

XGameInviteRegisterForEvent

XGameInviteUnregisterForEvent