Использование рабочих профилей

Рабочий профиль — это управляемый профиль , который имеет отдельные данные приложения из основного профиля пользователя, но имеет общие системные настройки, такие как Wi-Fi и Bluetooth. Основная цель рабочего профиля — создать отдельный и безопасный контейнер для хранения управляемых данных. Администратор рабочего профиля имеет полный контроль над объемом, входом, выходом и временем существования данных. Ниже приведены некоторые характеристики рабочих профилей:

  • Творчество. Любое приложение основного пользователя может создать рабочий профиль. Перед созданием пользователя уведомляют о поведении рабочего профиля и применении политик.

  • Управление. Приложения, известные как владельцы профилей, могут программно вызывать API в классе DevicePolicyManager для ограничения использования. Владельцы профиля определяются при первоначальной настройке профиля. Политики, уникальные для рабочих профилей, включают ограничения приложений, возможность обновления и поведение намерений.

  • Визуальное лечение. Приложения, уведомления и виджеты из рабочего профиля помечаются значком и обычно становятся доступными вместе с элементами пользовательского интерфейса (UI) от основного пользователя.

Детали реализации

Рабочие профили реализованы как вторичные пользователи, поэтому приложения, работающие в рабочем профиле, имеют UID uid = 100000 \* userid + appid . Эти профили имеют отдельные данные приложения ( /data/user/userid ), аналогичные основным пользователям.

AccountManagerService поддерживает отдельный список учетных записей для каждого пользователя. Различия в учетных записях между пользователем рабочего профиля и обычным дополнительным пользователем включают следующее:

  • Рабочий профиль связан со своим родительским пользователем и запускается с основным пользователем во время загрузки.

  • Уведомления для рабочих профилей включаются ActivityManagerService , что позволяет рабочему профилю совместно использовать стек действий с основным пользователем.

  • Дополнительные общие системные службы включают службы IME, A11Y, Wi-Fi и NFC.

  • API средства запуска позволяют средствам запуска отображать приложения со значками и виджеты из разрешенного списка из рабочего профиля рядом с приложениями в основном профиле без переключения пользователей.

Разделение данных

В рабочих профилях используются следующие правила разделения данных.

Программы

Если одно и то же приложение существует в основном пользовательском и рабочем профилях, область действия приложений определяется их собственными отдельными данными. Как правило, приложения действуют независимо и не могут напрямую взаимодействовать с экземплярами через границу между профилем и пользователем, если только они не имеют разрешения INTERACT_ACROSS_PROFILES или App-ops .

учетные записи

Учетные записи в рабочем профиле уникальны для основного пользователя, и учетные данные не могут быть доступны через границу между профилем и пользователем. Только приложения в соответствующем контексте могут получить доступ к своим учетным записям.

Намерения

Администратор контролирует, разрешаются ли намерения в рабочем профиле или вне его. По умолчанию приложения из рабочего профиля ограничены рамками рабочего профиля, за исключением Device Policy API.

Идентификаторы устройств

На личных устройствах с рабочим профилем Android 12 или более поздней версии удаляет доступ к аппаратным идентификаторам устройства (IMEI, MEID, серийный номер) и предоставляет уникальный идентификатор регистрации , который идентифицирует регистрацию рабочего профиля для конкретной организации. Идентификатор регистрации гарантированно останется стабильным после сброса настроек, что обеспечивает надежное отслеживание инвентаризации устройств с рабочими профилями.

На личных устройствах с рабочим профилем должен использоваться идентификатор регистрации; корпоративные устройства, включая как рабочий профиль, так и полностью управляемые устройства, также могут использовать этот идентификатор. Чтобы использовать идентификатор регистрации, EMM должны установить идентификатор организации для каждого устройства, которым они управляют, после чего они могут считать идентификатор регистрации на этом устройстве и обрабатывать его как серийный номер. Дополнительные сведения см. в разделе Улучшения безопасности и конфиденциальности для рабочего профиля .

Настройки

Принудительное применение настроек распространяется на рабочий профиль, за исключением параметров экрана блокировки и шифрования, которые распространяются на устройство и совместно используются основным пользователем и рабочим профилем. Помимо этих исключений, владелец профиля не имеет прав администратора устройства за пределами рабочего профиля.

Управление устройствами на устройствах с рабочим профилем

Android 5.0 и более поздние версии поддерживают управление устройствами для рабочих профилей на личных устройствах с использованием собственных устройств (BYOD) с помощью класса DevicePolicyManager . Кроме того, в Android 11 появилась концепция рабочих профилей на корпоративных устройствах. Возможности управления устройствами внутри рабочего профиля остаются одинаковыми как для устройств BYOD, так и для устройств, принадлежащих компании, однако рабочие профили на устройствах, принадлежащих компании, могут предоставлять дополнительные возможности/политики, такие как installSystemUpdate , setScreenCaptureDisabled и setPersonalAppsSuspended , которые могут расширять применение политик администратора. за пределами рабочего профиля для определенных политик устройства.

  • Рабочий профиль на личном устройстве (BYOD). Устройство является личным устройством и содержит рабочий профиль, которым управляет ИТ-администратор, связанный с работодателем.

  • Рабочий профиль на корпоративном устройстве. Устройство предоставляется/принадлежит работодателю и содержит рабочий профиль, которым управляет ИТ-администратор, связанный с работодателем. Приложения могут вызывать isOrganizationOwnedDeviceWithManagedProfile() , чтобы определить, было ли устройство подготовлено как устройство, принадлежащее организации, с управляемым профилем.

Дополнительные сведения о создании рабочего профиля и использовании API политик устройств см. в разделе Создание рабочего профиля .

Владельцы профиля

Приложение Device Policy Client (DPC) действует как владелец профиля при создании рабочего профиля. Клиентское приложение DPC обычно предоставляется партнером по управлению мобильностью предприятия (EMM), например Google Apps Device Policy, и способно применять политики, если оно установлено в качестве владельца профиля. В рабочем профиле отмечены экземпляры приложений, которые визуально отличаются от личных экземпляров приложений; значок идентифицирует приложение как рабочее. EMM контролирует только рабочий профиль (рабочие приложения и данные), но не личное пространство. Политики устройства применяются только к рабочему профилю с некоторыми исключениями, такими как принудительное применение экрана блокировки, которое применимо ко всем устройствам.

Пользовательский интерфейс рабочего профиля

Android 9 или более поздней версии обеспечивает более тесную интеграцию между рабочими профилями и платформой Android, что упрощает пользователям хранение рабочей и личной информации на своих устройствах. Изменения рабочего профиля отображаются в средстве запуска и обеспечивают согласованное взаимодействие с пользователем на управляемых устройствах.

Пользователи могут переключать рабочий профиль из настроек или меню быстрых настроек. В Android 9 или более поздней версии реализации устройства могут включать переключатель в нижнем колонтитуле рабочей вкладки, чтобы пользователи могли включать или отключать рабочий профиль. Переключение рабочего профиля выполняется асинхронно и применяется ко всем действительным профилям пользователей; этот процесс контролируется классом WorkModeSwitch .

Устройства с панелью приложений

В Android 9 или более поздней версии изменения пользовательского интерфейса рабочего профиля для Launcher3 помогают пользователям поддерживать отдельные личные и рабочие профили. Панель приложений представляет собой представление с вкладками, позволяющее отличить приложения личного профиля от приложений рабочего профиля. Когда пользователи впервые просматривают вкладку рабочего профиля, им предоставляется образовательное представление, помогающее перемещаться по рабочему профилю.

Пользователи могут переключаться между различными представлениями профиля, используя вкладки профиля или аналогичный пользовательский интерфейс в верхней части панели приложения:


Рис. 1. Представление вкладки «Личные»

Рис. 2. Вид вкладки «Работа», переключатель рабочего профиля

Представление с вкладками реализовано как часть класса AllAppsContainerView Launcher3. Для эталонной реализации индикатора профиля с вкладками обратитесь к классу PersonalWorkSlidingTabStrip .

Обучающее сообщение для пользователей на устройствах с рабочей вкладкой

Android 9 или более поздней версии поддерживает образовательное представление, которое информирует пользователей о назначении рабочей вкладки и о том, как они могут упростить доступ к рабочим приложениям. Используя Launcher3, образовательный вид может отображаться на экране рабочей вкладки, когда пользователи впервые открывают рабочую вкладку, как показано ниже:

Образовательный вид

Рисунок 3. Образовательный вид

Устройства без области приложений

Для программ запуска без панели приложений рекомендуется продолжать размещать ярлыки приложений рабочего профиля в рабочей папке.

Пользовательские реализации средства запуска могут использовать getProfiles() и getActivityList() для получения списка приложений со значком средства запуска для пользователя рабочего профиля.

На устройствах с рабочей папкой пользователи могут получить доступ к приложениям рабочего профиля, открыв рабочую папку:


Рисунок 4. Закрытая рабочая папка

Рисунок 5. Открытая рабочая папка

Обучающее сообщение для пользователей в устройствах с рабочей папкой

Для средств запуска без области приложений, где рабочая папка содержит рабочие приложения, обучающее сообщение рабочего профиля может отображаться в виде всплывающей подсказки, которую можно закрыть, когда пользователь открывает рабочую папку в первый раз:

Отклоняемая подсказка

Рисунок 3. Отключаемая всплывающая подсказка

Проверка пользовательского интерфейса рабочего профиля

Самый простой способ протестировать пользовательский интерфейс рабочего профиля — настроить рабочий профиль с помощью приложения Test DPC. Следующие шаги описывают, как настроить рабочий профиль на личном устройстве (сценарий BYOD):

  1. Начните с устройства с заводскими настройками и завершите настройку личного профиля с помощью личной учетной записи Google или, альтернативно, используйте устройство с личным профилем в качестве отправной точки.

  2. Установите приложение Test DPC из магазина Google Play.

  3. Откройте панель запуска или панель приложений и выберите « Настроить тестовый DPC» .

  4. Следуйте инструкциям на экране, чтобы настроить рабочий профиль:


    Рисунок 4. Настройка рабочего профиля


    Рисунок 5. Добавление учетных записей


    Рисунок 6. Настройка завершена

  5. Откройте панель запуска или панель приложений и убедитесь, что рабочая вкладка присутствует и содержит нижний колонтитул рабочего профиля. Альтернативные реализации производителей устройств могут содержать рабочую папку вместо рабочей вкладки.

  6. Убедитесь, что вы можете переключать рабочий профиль из быстрых настроек (или настроек), подтвердив, что приложения рабочего профиля (приложения со значком портфеля) включены и отключены, как и ожидалось. В некоторых реализациях устройств рабочие приложения могут быть недоступны, когда рабочий профиль отключен, в то время как в других, например реализациях с рабочей вкладкой, может отображаться наложение с сообщением о том, что рабочий профиль отключен. На следующих рисунках показаны примеры включенных и отключенных рабочих профилей на устройстве, на котором реализована рабочая вкладка.


    Рис. 7. Включение, рабочий профиль включен

    Рис. 8. Выключить, рабочий профиль отключен

Значок приложения рабочего профиля

В Android 9 или более поздней версии из соображений доступности цвет рабочего значка — синий (#1A73E8) вместо оранжевого.