Настройка рабочего профиля
TikMatrix поддерживает индивидуальную настройку пользователей рабочего профиля для каждого устройства, что очень полезно для корпоративных устройств или сред с двойными приложениями.
Что такое рабочий профиль
Рабочий профиль - это функция Android, которая позволяет создать независимую рабочую среду на одном устройстве. Настроив различные идентификаторы пользователей, вы можете:
- Нормально использовать TikMatrix на корпоративных устройствах
- Устанавливать различные польз овательские конфигурации для разных сред приложений
- Достичь более детального управления устройствами и контроля разрешений
Использование инструмента Shelter для клонирования приложений
Перед настройкой рабочего профиля необходимо использовать инструмент Shelter для клонирования приложений TikTok и TikMatrix:
Что такое Shelter
Shelter - это приложение с открытым исходным кодом, которое создает и управляет рабочим профилем на Android-устройствах. Оно позволяет запускать дублированные приложения в изолированной рабочей среде.
Установка Shelter
- Скачайте Shelter из F-Droid или Google Play Маркет
- Установите и откройте Shelter на вашем устройстве
- Следуйте мастеру настройки для создания рабочего профиля
Клонирование необходимых приложений
После настройки Shelter необходимо клонировать приложения TikTok и TikMatrix:
-
Клонирование приложения TikTok:
- Откройте Shelter и перейдите на вкладку "Основной"
- Найдите TikTok в списке приложений
- Нажмите кнопку "Клонировать в рабочий профиль"
- Дождитесь завершения процесса клонирования
-
Клонирование приложения TikMatrix:
- В Shelter найдите TikMatrix в списке приложений
- Нажмите кнопку "Клонировать в рабочий профиль"
- Подтвердите операцию клонирования
Проверка успешного клонирования
После успешного клонирования:
- Вы увидите TikTok и TikMatrix с иконкой портфеля в панели приложений
- Это версии приложений для рабочего профиля
- Оригинальные приложения остаются неизменными в основном профиле
Как настроить рабочий профиль
1. Откройте диалог рабочего профиля
В списке устройств каждая строка заканчивается значком портфеля в столбце действий. Нажмите его, чтобы открыть диалог рабочего профиля для этого устройства.
Чтобы настроить сразу несколько устройств, отметьте их флажки и воспользуйтесь кнопкой Задать рабочий профиль на панели выбора над списком.
2. Выберите пользователя
TikMatrix сам считывает список пользователей устройства и показывает его в диалоге, поэтому ничего искать и вводить по памяти не нужно. Каждый пользователь показан с идентификатором и именем и помечен как:
- Основной — владелец устройства, пользователь 0. Автоматизации, нацеленной на него, рабочий профиль не нужен.
- Рабочий профиль — управляемый профиль, то есть тот, который создаёт Shelter. Выбирать нужно его.
- Остан овлен — пользователь существует, но сейчас не запущен.
Нажмите на нужного пользователя. Если устройство сейчас недоступно, введите идентификатор в поле ниже.
Оставьте поле пустым или выберите основного пользователя, чтобы сбросить настройку и вернуться к пользователю 0.
3. Сохраните
Перед сохранением TikMatrix проверяет выбранного пользователя:
- что он существует на устройстве и
- что TikMatrix, его тестовый пакет и автоматизируемое приложение клонированы в него.
Если чего-то не хватает, диалог называет, чего именно, а кнопка меняется на Всё равно сохранить — повторное нажатие сохранит настройку как есть. Именно эта проверка ловит опечатку в идентификаторе или профиль, в который приложения так и не были клонированы, пока вы ещё смотрите на диалог, а не спустя часы, когда задача упадёт.
Устройство с настроенным рабочим профилем показывает идентификатор пользователя на значке портфеля в списке устройс тв.
Описание идентификатора пользователя
Распространённые идентификаторы
- 0: основной пользователь (по умолчанию)
- 10: первый пользователь рабочего профиля
- 11: второй пользователь рабочего профиля
- Последующие идентификаторы следуют той же схеме
Диалог перечисляет то, что действительно есть на устройстве, поэтому эти значения — лишь ориентир.
Хранение файла конфигурации
Настройки рабочего профиля сохраняются в data/work_profile_user.json:
{
"device_serial_1": "10",
"device_serial_2": "11"
}
Ключи — это серийный номер устройства, тот, что показан в списке, а не адрес ip:port, по которому беспроводное устройство подключено в данный момент. TikMatrix выполняет это преобразование сам, поэтому настройка сохраняется при переподключениях и смене IP.
В файле оказываются только устройства с рабочим профилем. Сброс устройства удаляет его запись, а не записывает 0.
Управление настройками устройств
Настройка каждого устройства независима. Из списка устройств вы можете:
- Задать разным устройствам разные идентификаторы пользователя
- В любой момент изменить или сбросить настройку устройства
- Выбрать несколько устройств и задать или сбросить их вместе кнопкой Задать рабочий профиль
Править work_profile_user.json вручную по-прежнему можно, и перезапуск больше не нужен: TikMatrix замечает изменение файла в течение пары секунд.
Устранение неполадок
Частые проблемы
В: После настройки рабочего профиля команды завершаются с ошибкой
О: Откройте диалог снова и прочитайте результат проверки перед сохранением. Обычные причины:
- Идентификатор указывает на пользователя, которого на устройстве нет
- TikMatrix или автоматизируемое приложение никогда не клонировали в этот профиль
- Профиль остановлен — разблокируйте устройство и один раз откройте приложение из рабочего профиля
В: Как отменить настройку рабочего профиля
О: Откройте диалог, очистите поле ввода или выберите основного пользователя и сохраните.
В: Что делать, если настройки потеряны
О: Настройки хранятся в локальном файле JSON. Если они потеряны, задайте их заново или восстановите data/work_profile_user.json из резервной копии.
В: Проблемы, связанные с Shelter
О: Если возникают проблемы с Shelter:
- Клонирование не удаётся: убедитесь, что есть права администратора и достаточно места
- Клонированные приложения не видны: проверьте, действительно ли рабочий профиль активирован в Shelter
- Приложения падают в рабочем профиле: попробуйте клонировать их заново или обновить Shelter
- Не удаётся найти клонированные приложения: ищите в меню приложений зн ачки с пометкой в виде портфеля
Лучшие практики
Корпоративная среда
- Единое управление: Установите одинаковый ID пользователя для всех корпоративных устройств
- Разделение разрешений: Используйте разные ID пользователей для различения уровней разрешений
- Резервное копирование настроек: Регулярно создавайте резервные копии файла
work_profile_user.json
Личное использование
- Изоляция приложений: Устанавливайте разные пользовательские среды для разных целей
- Тестовая среда: Используйте независимые ID пользователей для тестирования приложений
- Защита конфиденциальности: Повышайте безопасность конфиденциальности через разделение пользователей
Управление инструментом Shelter
- Регулярные обновления: Поддерживайте приложение Shelter в актуальном состоянии для обеспечения совместимости
- Синхронизация приложений: Убедитесь, что TikTok и TikMatrix клонированы перед настройкой рабочего профиля
- Резервное копирование настроек Shelter: Экспортируйте и создавайте резервные копии конфигураций Shelter для легкого восстановления
- Мониторинг обновлений приложений: При обновлении TikTok или TikMatrix может потребоваться обновление клонированных версий
Технические подробности
Рабочий профиль — это второй пользователь Android на том же устройстве, поэтому настройка меняет три вещи в том, как TikMatrix управляет телефоном.
Командам, которые понимают пользователей Android, сообщается, какой именно. Каждая команда оболочки Android ждёт флаг --user в своём месте, а поставленный не туда он игнорируется, а не отвергается, поэтому TikMatrix расставляет его по каждой команде:
# `settings` принимает флаг перед своим глаголом
adb shell settings --user 10 put system screen_off_timeout 2147483647
# `am`, `ime` и `pm` — после своего
adb shell am start --user 10 -n com.zhiliaoapp.musically/.MainActivity
adb shell ime set --user 10 com.github.tikmatrix/.FastInputIME
adb shell pm list packages --user 10 com.zhiliaoapp.musically
Так обрабатываются только am, pm, ime, content и settings. Команды, для которых понятия пользователя Android не существует — input, chmod, rm, pkill, ip, mkdir — отправляются без изменений. input в особенности доставляет события в окно на переднем плане, а не пользователю, поэтому нажатиям и свайпам флаг не нужен.
Пути к файлам указывают на хранилище профиля. Материалы, отправляемые на устройство, попадают в /storage/emulated/10/DCIM, а не в /storage/emulated/0/DCIM, чтобы клонированное приложение их видело.
Установленные приложения привязываются к профилю. adb install доходит только до основного пользователя, поэтому после каждой установки TikMatrix выполняет pm install-existing --user 10 <package>, чтобы тот же APK стал доступен внутри профиля.