Доступ к изображению профиля Raw Gamer
Я использую новый API XBox Live для 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 ответ
Приведенный ниже пример должен работать, если вы соответствуете следующим требованиям:
- Ссылка на общий проект, который содержит API из вашего проекта и не ссылается на проект "Microsoft.Xbox.Services.UWP.CSharp"
- Скопируйте все файлы исходного кода из проекта "Microsoft.Xbox.Services.UWP.CSharp" в ваш проект.
- Включите пакет Newtonsoft.Json NuGet в свой проект
Шаги 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" не существует в текущем контексте...\System\UserImpl.cs 142 Active
Если вы получаете эту ошибку, убедитесь, что вы нацелены на Win 10.0 Build 14393.