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 主机