访问原始玩家档案图片

时间:2017-03-27 03:10:12

标签: xbox-live

我正在使用新的XBox Live API for C#(https://github.com/Microsoft/xbox-live-api-csharp)通过UWP应用程序进行官方访问。

我能够正确验证并在上下文中引用XBox Live用户。

SignInResult result = await user.SignInAsync(); 
XboxLiveUser user = new XboxLiveUser();

成功!但是,我似乎无法找到适当的API调用来返回 XboxUserProfile XboxSocialProfile 。这两个类都包含播放器原始游戏玩家照片的URL。在查看MSDN文档和GH库之后,我不清楚这是如何实现的。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

如果您满足以下预先要求,则以下示例应该有效:

  1. 从项目中引用包含API的共享项目,并且不要引用" Microsoft.Xbox.Services.UWP.CSharp"项目
  2. 从" Microsoft.Xbox.Services.UWP.CSharp"复制所有源代码文件。项目进入你的项目
  3. 将Newtonsoft.Json NuGet包包含到您的项目中
  4. 步骤1& 2很重要,因为这可以让你访问"内部"否则会受到保护的构造函数。

    检索个人资料数据的代码:

            XboxLiveUser user = new XboxLiveUser();
            await user.SignInSilentlyAsync();
    
            if (user.IsSignedIn)
            {
                XboxLiveContext context = new XboxLiveContext(user);
                PeopleHubService peoplehub = new PeopleHubService(context.Settings, context.AppConfig);
                XboxSocialUser socialuser = await peoplehub.GetProfileInfo(user, SocialManagerExtraDetailLevel.None);
                // Do whatever you want to do with the data in socialuser
            }
    

    你可能仍然遇到像我一样的问题。构建项目时,您可能会遇到以下错误:

      

    错误CS0103名称' UserPicker'在当前不存在   context ... \ System \ UserImpl.cs 142 Active

    如果您收到该错误,请确保以Win 10.0 Build 14393为目标。