перевод с корректировкой оригинала - проверим его в работе и сообщим
!!! Из команды линукс-ядра убрали русских и начались проблемы с запуском всего и всяк на Debian 12-13 и сбои в линукс-ядрах 6+ !!!
Запустить приложения для Android, легко отправлять сообщения друзьям, просматривать социальные сети или играть в мобильные игры на ПК без Android-девайса можно с помощью Anbox — эмулятора Android в контейнере, созданного специально для Linux. Пошаговая инструкция установки Anbox на Ubuntu 20.04 LTS или более позднюю версию и способы по настройке и управлению Android на вашем компьютере с Linux.
Зачем запускать приложения для Android изначально в Linux?
Для начала поймём почему глубокая интеграция функций Android в Linux даёт уникальные преимущества:
Бесшовное использование между устройствами
Более 85% смартфонов работают на Android, что составляет 3 миллиарда активных устройств по всему миру. Возможность запускать приложения Android на ПК с Linux упрощает рабочие процессы:
- Синхронизация сообщений между устройствами (SMS, обмен сообщениями, видеочат)
- Разрабатывайте приложения для Android с немедленным тестированием под Linux
- Играйте в мобильные игры на больших экранах с поддержкой клавиатуры / мыши
- Устраните проблемы с фрагментацией устройств, выполнив стандартизацию в Linux
Лучшая производительность По сравнению с виртуальными машинами
Традиционные эмуляторы Android, такие как Genymotion, используют полную виртуализацию, которая воссоздаёт аппаратное обеспечение телефона вплоть до мельчайших деталей. Это обеспечивает высокую совместимость, но требует значительных затрат.
Anbox уникальным образом запускает пользовательское пространство Android непосредственно в контейнере Linux, используя вместо этого пространства имён. Это обеспечивает почти такую же скорость, как у «голого железа», при меньшем потреблении памяти, что идеально подходит для разработчиков.
Некоторые тесты образа Pixel C в Anbox на Ubuntu в сравнении с Genymotion, работающим на Pixel C в VirtualBox:
ПлатформаОценка GeekbenchИспользуемая памятьВремя загрузкиAnbox в Linux1830 одиночных / 5152 мульти1.1 ГБ12 секундGenymotion в VirtualBox626 одиночных / 1693 мульти1,8 ГБ35 секунд
Благодаря отказу от эмулируемого оборудования Anbox превосходит виртуальные машины для локального тестирования Android.
Полная Поддержка приложений Linux
В отличие от двойной загрузки Android или удалённого доступа, Anbox позволяет одновременно использовать настольные приложения Linux даже при тестировании мобильных устройств в изолированных средах.
Разработчики могут редактировать код в предпочитаемой ими среде разработки, обращаться к документации, использовать терминал Linux, делать скриншоты, запускать утилиты для отладки, такие как adb logcat, и многое другое, не прерывая привычный рабочий процесс.
Для конечных пользователей более удобным решением будет использование привычных рабочих столов Linux с доступом к приложениям и уведомлениям Android локально.
Виртуальные машины или физические устройства не могут сравниться с мобильными приложениями по возможности запуска нативных приложений с сохранением поддержки приложений Linux.
Теперь, когда я рассказал о преимуществах Anbox перед альтернативами, давайте установим его…
Установка модулей ядра Anbox
Anbox работает, связывая пользовательское пространство Android с ядром Linux с помощью специальных модулей, которые обеспечивают особые привязки и разрешения.
Сначала мы добавим выделенный PPA, предоставляющий зависимости Anbox:
sudo add-apt-repository ppa:morphis/anbox-support
После настройки Morphis PPA обновите индекс вашего пакета:
sudo apt update
Наконец, извлеките последние заголовки ядра и модули ядра, специфичные для Anbox:
sudo apt install linux-headers-generic anbox-modules-dkms
Установите пакеты объемом 215 кБ при появлении соответствующего запроса.
Они обеспечивают основу для подключения вызовов Android API к основной среде Linux.
Привязка интерфейсов Android к Linux
Теперь включите два ключевых модуля Anbox для завершения интеграции с Android:
Ashmem – Интерфейс с общей памятью, обеспечивающий высокопроизводительный обмен данными:
sudo modprobe ashmem_linux
Binder – механизм IPC для вызовов служб между процессами:
sudo modprobe binder_linux
Проверьте, правильно ли инициализированы оба устройства в разделе /dev:
ls -l /dev/{ashmem,binder}
Благодаря установленным двусторонним каналам связи Android может полностью взаимодействовать с ядром Linux.
Такой подход с использованием лёгкого связующего ПО даёт Anbox преимущества в производительности и эффективности по сравнению с решениями на основе аппаратной виртуализации.
Установка Anbox и создание среды Android
Далее мы установим Anbox с помощью официального пакета snap:
sudo snap install --devmode --beta anbox
В настоящее время Anbox является бета-версией программного обеспечения с частыми обновлениями. Использование snap-паков обеспечивает простоту обновления и управления зависимостями по мере развития.
После установки запустите Anbox из меню приложений, и среда Android инициализируется:
В контейнерной среде теперь существует полноценная платформа Android на основе AOSP. Мы получаем преимущества интеграции мобильной ОС без двойной загрузки или накладных расходов на виртуальную машину.
Дополнительная загрузка файлов Android APK с помощью ADB
Чтобы установить дополнительные приложения, помимо предустановленных в Anbox, используйте инструмент командной строки ADB (Android Debug Bridge):
sudo apt install adb
Проверьте наличие нашей связанной среды Android:
adb devices -l
Вы должны увидеть единственное emulator-5554 устройство, представляющее Anbox.
Просмотрите APKMirror, чтобы найти приложения, которые гарантированно поддерживают архитектуру x86.
Затем загрузите APK-файлы с вашего терминала Linux:
adb install app.apk
Установленные приложения будут автоматически отображаться в программе запуска Anbox. Очень удобно!
Предоставление разрешений среды выполнения
По умолчанию Anbox не предоставляет приложениям специальных разрешений Android при боковой загрузке. Нам нужно вручную разрешить доступ к возможностям устройства, таким как камера, список контактов, хранилище и т. д.
Перейдите в Настройки> Приложения, затем выберите недавно добавленное приложение:
Включите все необходимые разрешения в зависимости от того, какие функции использует приложение:
- Камера – Для съемки фотографий / видео в приложении
- Контакты – Для доступа к вашему списку контактов
- Местоположение – Для использования GPS-координат устройства
- Микрофон – Для аудиовхода
- Хранилище – Для доступа к локальным файлам / изображениям
- Телефон – Для поддержки прямого вызова
При установленных соответствующих разрешениях приложения запускаются корректно!
Настройка и оптимизация Anbox
После настройки работы приложений Android через Anbox учтите несколько моментов:
- Запускайте приложения в отдельных окнах для многозадачности
- Настройте параметры разработчика, такие как плотность отображения
Создавайте оптимальные профили производительности для каждого варианта использования
- Просмотрите журналы через adb logcat для устранения неполадок
Не забывайте, что у вас также есть полный контроль над рабочим столом Linux:
- Скриншот приложения для Android
- Запускайте приложения Anbox из пусковых установок приложений
- Автоматизируйте использование с помощью shell-скриптов
- Интеграция с оконными менеджерами, такими как i3
Объединяя возможности Android и Linux, открываются огромные возможности!
Дальнейший путь для Anbox
Мы получили практический потенциал функции Android на Linux с помощью простой загрузки приложений.Перспективы Anbox в следующем:
Ведущий разработчик Саймон Фелс сказал в недавнем интервью:
«Мы хотим превратить продукт в более универсальную платформу… для любого программного стека, чтобы можно было создавать что-то вроде Android, не задумываясь обо всех технических деталях».
Он выделяет предстоящие функции, такие как:
- Более широкая поддержка изображений Android
- Расширяющаяся аппаратная интеграция
- Альтернативные источники установки приложений
- Интеграция коммерческих партнерств
Цель состоит в том, чтобы создать всё более прозрачную и производительную контейнерную платформу, которая позволит использовать унифицированные устройства нового поколения.
И обещают что Anbox навсегда останется программой с открытым. исходным кодом !!!