Вводные сведения о многопользовательских приложенияхIntroduction to multi-user applications

В этом разделе кратко представлены общие сведения о многопользовательской модели Xbox.This topic is intended to be a simple high-level introduction to the Xbox multi-user model.

Модель пользователя Xbox One разработана с учетом требований игровой консоли, которая поддерживает совместное использование одного устройства несколькими игроками.The Xbox One user model is tuned to the requirements of a gaming console that supports multiple users playing games cooperatively on a single device. Она позволяет нескольким пользователям выполнить вход со своих контроллеров и использовать консоль одновременно в ходе одного интерактивного сеанса.It enables multiple users, each with their own controller, to be signed in and using the console at the same time in a single interactive session. Это отличается от других устройств с Windows.This is different from other Windows devices. Пример:For example:

  • Настольные компьютеры с Windows позволяют нескольким пользователям использовать одно и то же устройство, но у каждого пользователя открыт свой собственный интерактивный сеанс и каждый сеанс совершенно независим от других сеансов на устройстве.Windows desktop PCs allow multiple users to use the same device, but each user has their own interactive session and each session is completely independent of the other sessions on the device.
  • Телефоны с Windows позволяют использовать устройство только одному пользователю.Windows phones allow only a single user to use the device. Этот единственный пользователь определяется в ходе запуска при первом включении и не может выйти из системы.That single user is determined during the OOBE (out-of-box-experience) and the user cannot sign out after they are signed in. Фактически, если другой пользователь захочет использовать устройство, придется выполнить сброс устройства.In effect, if a different user wants to use the device, the device has to be reset.
  • Xbox One позволяет нескольким пользователям выполнить вход и использовать устройство одновременно в ходе одного интерактивного сеанса.Xbox One allows multiple users to be signed in and use the device at the same time in a single interactive session.

Каждому пользователю в модели пользователя Xbox One соответствует локальная учетная запись пользователя.Each user in the Xbox One user model is backed by a local user account. Эта локальная запись пользователя связана с учетной записью Xbox Live (а значит, и учетной записью Майкрософт).This local user account is associated with an Xbox Live account (and therefore a Microsoft account). Таким образом, существует однозначное соответствие между учетной записью пользователя Xbox, учетной записью Xbox Live и учетной записью Майкрософт.This means that there is a strict one-to-one mapping of an Xbox user account to an Xbox Live account and to a Microsoft account.

Однопользовательские приложенияSingle user applications

По умолчанию приложения универсальной платформы Windows (UWP) выполняются в контексте пользователя, запустившего приложение.By default, Universal Windows Platform (UWP) apps run in the context of the user that launched the application. Этим однопользовательским приложениям (SUA) известно только о соответствующем пользователе. Они выполняются в режиме, совместимом с моделью пользователя на других устройствах с Windows.These single user applications (SUAs) are only aware of that single user, and run in a mode that is compatible with the user model on other Windows devices. Модель пользователя Xbox решает, какой пользователь связан с приложением, и проверяет при запуске приложения, выполнил ли пользователь вход.The Xbox user model manages which user is associated with the app and guarantees that a user is signed in when the app is launched. В этой модели авторам приложений и игр UWP не нужно ничего специально предпринимать для работы в Xbox.In this model, UWP app and game authors do not have to do anything special to run on Xbox.

Многопользовательские приложенияMulti-user applications

Игры UWP могут использовать многопользовательскую модель Xbox One.UWP games can choose to opt into the Xbox One multi-user model. Эти многопользовательские приложения (MUA) выполняются в контексте учетной записи системы (т. н. учетной записи по умолчанию) и могут использовать все преимущества и гибкость модели пользователя Xbox One.These multi-user applications (MUAs) run in the context of a system account (called the Default Account) and can take full advantage of the flexibility and power of the Xbox One user model. Для таких игр модель пользователя Xbox не решает, какой пользователь связан с игрой, и даже не требует, чтобы пользователь вошел для запуска игры.For these games, the Xbox user model does not manage which user is associated with the game and does not even require that a user is signed in for the game to run. Это означает, что при их написании необходимо недвусмысленно указать требования к пользователям и обеспечить возможность управления таковыми: обязателен ли вход пользователя в систему, используется ли концепция текущего пользователя, возможен ли одновременный ввод данных двумя пользователями и т. д.This means that they have to be written to be explicitly aware of, and manage their user requirements: whether they require a signed-in user or not, whether they implement the concept of a current user, whether they allow simultaneous input from multiple users, and so on.

Активация многопользовательской модели.To opt into the multi-user model:

  1. Откройте проект в Visual Studio.Open your project in Visual Studio.
  2. Выберите файл package.appxmanifest.xml.Select the package.appxmanifest.xml file.
  3. Щелкните по нему правой кнопкой мыши и выберите пункт Перейти к коду.Right-click and select View Code.
  4. Добавьте следующую строку в раздел <Properties></Properties>:Add the following line in the <Properties></Properties> section:
<uap:SupportedUsers>multiple</uap:SupportedUsers>

Идентификация пользователей и типов вводаIdentifying users and inputs

Разработчики могут использовать объект KeyRoutedEventArgs.DeviceId, используемый перенаправленными событиями KeyUp и KeyDown, для дифференциации событий, которые создаются разными типами ввода.Developers can use KeyRoutedEventArgs.DeviceId, used by KeyUp and KeyDown routed events, to differentiate the events generated from different inputs. Метод Windows.System.UserDeviceAssociation.FindUserFromDeviceId поможет идентифицировать пользователя, связанного с конкретным типом ввода.Using the Windows.System.UserDeviceAssociation.FindUserFromDeviceId method will help to identify the user associated to a specific input.

См. дополнительные сведения в разделе KeyRoutedEventArgs.DeviceId.See the KeyRoutedEventArgs.DeviceId topic for more information.

Руководство по выбору моделиGuidance on which model to choose

Все приложения UWP и большинство однопользовательских игр можно написать в формате SUA.All UWP apps and the majority of single user games can be written to be SUAs. Рекомендуется рассматривать применение многопользовательской модели Xbox One только при разработке коллективных многопользовательских игр.We recommend that only cooperative multi-player games consider opting into the Xbox One multi-user model.

См. также разделSee also