- Android программы в Ubuntu.
- Подготовка.
- Android SDK.
- Создание Android Virtual Device.
- Использование Android Virtual Device.
- Лепим ярлыки Андроиду.
- Сборка Android под Ubuntu Linux
- Решение
- Как запускать Android приложения и игры в Linux
- Знакомьтесь, Anbox, ваш “Android в коробке”.
- Установка Anbox на Ubuntu 16.04 LTS и 18.04 LTS
- Установка Anbox в Ubuntu 20.04 LTS
- Загрузка файлов APK на ваш компьютер Linux
- Установка приложений Android из Google Play и не только
- Другие способы запуска приложений Android в Linux
Android программы в Ubuntu.
Если хочется поиграть в игрушки с платформы Android в любимой Ubuntu, то данная статья поможет в этом. Ведь Андроид это патченное ядро Linux и виртуальная java машина Dalvik. Вроде родные проекты и всё должно быть гладко. Так ли это?
Подготовка.
По умолчанию в Ubuntu идёт Java, которая именуется OpenJDK и официально признаётся эталонной реализацией Явы. Хотя жизнь показывает, что не все Java программы, работающие в Oracle Java, работают в OpenJava — вот такое нарушение собственного девиза «написано раз — работает везде».
У меня в системе установлена Java от Oracle, но с OpenJava не должно быть проблем.
Так же следует знать, что мы будем запускать 32 битное приложение и если у вас 64 битная система, то в релизах Убунту ДО версии 12.xx нужно установить пакет ia32-libs. С версии 12.xx взят курс на «многоархитектурность» и вам нужно поставить пакет ia32-libs-multiarch, который позволит 32 битным программам найти нужные библиотеки в 64 битной системе.
И так у вас есть установленная Java и если у вас 64 битная система, то вы разобрались с ia32-libs* и 32 битные программы у вас запускаются корректно.
Android SDK.
Вам нужно скачать увесистый файл android-sdk*linux.tgz с сайта developer.android.com. Скачайте в домашнюю папку и распакуйте, чтобы получилась итоговая папка
Для запуска Android SDK Manager используйте
/android-sdk-linux/tools/android. При первом запуске из сети будут скачаны многие дополнительные модули и потребуется ваше терпение, зависящее от ширины вашего Интернет канала.
Создание Android Virtual Device.
После обновления, можно приступить к формированию своего виртуального смартфона, который называется Android Virtual Device (AVD). В меню «Tools — Manage AVDs» вы найдёте Android Virtual Device Manager.
Как видно из картинки, все ваши созданные AVD будут храниться в
/.android/avd/. Создать новую AVD вы можете кнопкой New.
В появившемся окне вы должны задать параметры AVD:
- Name: — название вашей AVD. Должно быть уникально в пределах множества различных AVD.
- Target: — целевая программная платформа. В моём случае это были: Android 4.1.2 API Level 16 и Google APIs API Level 16. Google API позволит использовать Google Play — место андроидных приложений, некий аналог убунту репозиториев. Но используя Google Play вы можете столкнуться со множеством ситуаций, когда Google Play будет сообщать, что «ваше устройство не поддерживается». Для таких целей я создал второй AVD с «Android 4.1.2 API Level 16» и использовал ручную установку приложений из файлов apk.
- CPU/ABI: — целевая аппаратная платформа. В моём случае доступны были: Intel Atom (x86), ARM (armeabi-v7a), Mips (mips).
- SD Card: — задайте готовый образ «виртуальной» карты через File или создайте новую карту через Size и укажите размер.
- Snapshot: — возможность создания снимков оставьте не тронутым.
- Skin: — «шкурку» лучше оставить в дефолтном значении, у меня это WVGA800. Это определяет так же размер экрана.
- Hardware: — рекомендую добавить кнопкой New новое устройство (поддержку) Клавиатура, что позволит комфортно использовать внутри Андроида ввод с клавиатуры, а не использовать только мышь, щёлкая по виртуальным кнопкам виртуальной клавиатуры.
Нажмите Create AVD и наберитесь терпения.
Использование Android Virtual Device.
Закончив создание AVD, запустите её выделив в списке и нажав кнопку Start и в новом окне Launch. Загрузившись в ваш виртуальный смартфон или планшет под управлением Андроид, вы увидите интерфейс, позволяющий видеть слева собственно экран, а справа элементы управления.
Желательно русифицировать интерфейс, хотя, если вы хорошо владеете английским языком, то можете и оставить английский язык единственным. Найдите в настройках Custom Locale и выставьте ru_RU.
Убедитесь, что вы разрешаете установку из неизвестных источников. Галочка ДОЛЖНА быть установлена.
У меня не получилось подружиться с Google Play, хотя я просто мало пытался и мне было проще скачать файл apk и установить его.
Теперь можно установить себе множество бесплатных развлекающих программ, которые вы не нашли под Ubuntu. Разве такие есть?
Лепим ярлыки Андроиду.
Если вы установили нужный софт в вашу виртуальную платформу и хотите быстро запускать её, то можете создать ярлык на Рабочем Столе или в Unity Launcher. Для этого создайте desktop файл, указывающий и запускающий вашу платформу. В моём случае был создан ярлык с запуском
На десерт видео, где менеджер Canonical Ричард Коллинз показывает прямо противоположную задачу — Ubuntu работает в паре на телефоне с Android. Когда вы вставляете смартфон в док станцию, Убунту берёт управление на себя и вы работаете как на обычном ПК. Но Убунту будет в курсе о ваших звонках и СМС. Вынимаете смартфон из док станции и перед вами обычный смартфон под управлением Android.
Источник
Сборка Android под Ubuntu Linux
Эта заметка является косвенным продолжением моей первой публикации Сборка Android под Mac OS X и имеет аналогичную цель — решение проблем сборки относительно старых версий Android 4.0.x.
Коротко вводная. В одном из проектов я занимаюсь доработками оригинального кода Android для создания прошивки под специфичную железку. Версия для сборки была выбрана уже относительно старая — AOSP 4.0.4, но на ней базируется стабильная ветка кода от производителя железки. Первоначально я работал на MacOS, но для этого проекта решил переключиться на Linux для удобства разработки. Итак волею судеб я перешел с MacOS на более менее свежий Ubuntu Linux 12.04.3, рекомендованную на данный момент версию Linux для сборки Android.
Основной сложностью в новом окружении осталась старая проблема — старые версии AOSP не отслеживаются и новые правки в сборочную систему не вносятся. Поэтому если сборка master’а особой сложности не представляет, то сборка предыдущих версий Android под более свежие версии Ubuntu требует исправления ряда проблем.
В моем случае рабочее окружение выглядит так:
- AOSP 4.0.4 r1.1
- Ubuntu Linux 12.04.3 x64
- GNU Make 3.81 и другие рекомендованные утилиты
Все основные моменты и сложности сборки AOSP хорошо описаны в официальной документации. Как и для MacOS, в случае с Ubuntu, для сборки AOSP 4.0.x версий предлагается использовать более старые версии базовой ОС. В частности в разделе «Known Issues» для решения проблемы «Build error with 4.0.x and earlier on Ubuntu 11.10» предлагается использовать старый релиз Ubuntu 10.04, что не очень хочется делать, если предполагается заниматься в ОС и другими задачами, кроме сборки AOSP.
Решение
Установка производилась на практически чистую Ubuntu, за исключением нескольких прикладных программ. Первичная настройка окружения производилась в соответствии с официальным описанием.
Ниже я привожу тексты ошибок из консоли и методы исправления. В зависимости от версии AOSP и вашего окружения они могут проявляться все или частично. Большинство решений можно найти в интернете, я привожу лишь краткое описание необходимых действий.
Ошибка 0
Или вовсе и не ошибка, а необходимость установить для сборки проприетарные пакеты Oracle Java, которые с некоторых пор не входят в поставку Ubuntu.
Исправление
Для сборки Android нам необходим JDK 6ой версии, соответственно для этого прописываемыем репозиторий Oracle с нужными пакетами и устанавливаем требуемый:
Аналогично можно установить последний JDK 7ой версии, если это требуется для других целей:
Ошибка 1
При установке необходимых пакетов не устанавливается пакет libgl1-mesa-glx:i386 в котором паходится нужная нам библиоткеа libGL x86. Не устанавливается со следующей причиной:
Вместе с ним для установки указан пакет libgl1-mesa-dev в котором содержится libGL, но x64 версия, что нам не подходит для сборки AOSP.
Если попробовать сборку с libgl1-mesa-dev для x64 архитектуры, то при линковке получим ошибку:
Исправление
Вместо пакетов libgl1-mesa-glx:i386 и libgl1-mesa-dev установить пакет libgl1-mesa-dev:i386:
Более подробное описание содержимого пакета можно найти в описании Ubuntu, видно что он содержит и нужный libgl1-mesa-glx.
Также при установке пакета будет создан и симлинк в директории /usr/lib/i386-linux-gnu/, поэтому дополнительно его создавать не нужно, как указано в руководстве командой:
Ошибка 2
Используемая в системе версия компилятора gcc (4.6.x) имеет проблему с переопределением символа _FORTIFY_SOURCE, о чем так же написано в официальных «Known Issues». Как решение предлагается откатиться на Ubuntu 10.04, что очевидно не самый лучший вариант. Текст предупреждения и ошибки будет такой:
Исправление
Эту проблему можно решить установив gcc-4.4 и необходимые библиотеки:
Подробнее про настройку 2х версий gcc и использование gcc-4.4 как приоритетной версии можно прочитать в этом блоге. Для наших же целей достаточно установить нужные пакеты и запускать сборку командой с указанием версии компилятора:
После приведенных выше операций Android соберется как мы и хотели, но постфактум можно столкнуться еще с парой неприятностей.
Ошибка 3
При запуске эмулятора с указанным параметром «-gpu on» для включения аппаратного ускорения отрисовки вы получите слежующее сообщение и черный экран в эмуляторе:
В обычном режиме эмулятор запускается нормально, но разобраться было интересно и к тому же выяснилось что после перезагрузки компьютера вентиляторы продолжают работать на максимуме и не глушатся. Мягко говоря очень не приятный эффект, при таком шуме работать крайне не удобно.
Исправление
Путем проверки пакетов выяснилось что при установке одного из них был удален проприетарный графический драйвер от NVidia и как следствие система забыла как регулировать скорость вращения вентилятора, а также где искать нужную библиотеку. Вредоносным пакетом оказался libncurses5-dev:i386, обратите внимание что при его установке будет следующий запрос:
Соответственно решением проблемы будет просто переустановка проприетарного драйвера в консоли или через панель управления.
Ошибка 4
Возникает при запуске эмулятора без указания файла ядра системы. В предыдущей статье я забыл указать этот момент, в этой исправляюсь чтобы описание было до конца полным. Итак при запуске эмулятора AOSP 4.0.4 мы получим сообщение:
Проблема возникла из-за того что в более свежих версиях AOSP prebuilts перенесли в другую директорию и это исправление попало в сборочные скрипты для старых версий, а вот местоположение не изменили.
Исправление
Указать при запуске эмулятора расположение ядра, путь относительно корня сборки:
Источник
Как запускать Android приложения и игры в Linux
Хотите запустить свои любимые приложения и игры для Android на ПК с Linux? Anbox делает это легко. Давайте посмотрим как запустить приложения Android в Ubuntu.
Знакомьтесь, Anbox, ваш “Android в коробке”.
Доступ к любимым приложениям и играм для Android открывает новые возможности для продуктивной работы в Linux. Мобильные приложения, по своей конструкции, намного проще, чем те, которые находятся на настольных операционных системах.
Это может быть именно то, что вы ищете для повышения производительности настольных систем!
Между тем, мобильные игры становятся все более сложными. Вполне логично, что вы можете захотеть продолжить игру на другом устройстве. Это особенно актуально, учитывая ограниченное время автономной работы телефона или планшета.
Для запуска приложений Android существует несколько инструментов для macOS и Windows (например, Bluestacks), но для Linux это недоступно.
Вместо этого пользователям Linux стоит попробовать Anbox, бесплатный инструмент с открытым исходным кодом для запуска приложений Android на Linux. Он основан на последней версии Android Open Source Project (AOSP) и предлагает оконную среду Android.
Anbox использует контейнеры для отделения Android от основной операционной системы, что позволяет запускать игры Android на Linux.
Это еще не все; Anbox не имеет ограничений, поэтому теоретически вы можете запускать любые приложения Android на Linux. Также отсутствует аппаратная виртуализация, поэтому Anbox одинаково хорошо работает как на ноутбуке, так и на настольном компьютере, независимо от спецификации системы.
Несмотря на то, что Anbox является бесплатным, он поставляется в виде пакета snap. Это означает, что двоичный файл и все зависимости включены в один пакет, что облегчает установку.
Для установки snaps требуется служба snapd, которая совместима с такими дистрибутивами Linux, как:
- Arch Linux
- Debian
- Fedora
- Gentoo
- Linux Mint
- Manjaro
- openSUSE
- Solus
- Ubuntu
Ubuntu snapd поставляется предустановленным, начиная с версии 14.04. Полную информацию о вашем дистрибутиве вы найдете на сайте Snapcraft.
Чтобы установить snapd, используйте следующую команду терминала:
sudo apt install snapd
Дождитесь завершения установки, прежде чем продолжить. Обратите внимание, что в то время как snapd работает или предустановлен в вышеперечисленных дистрибутивах, Anbox официально поддерживается в Ubuntu 16.04 LTS (Xenial Xerxes) и более поздних версиях. Однако для Ubuntu 20.04 LTS доступна только бета-версия, для которой требуются другие шаги (см. ниже).
Что еще более важно, вы, скорее всего, получите лучшие результаты при запуске приложений Android на Ubuntu, чем на других дистрибутивах. Поэтому ниже описаны шаги для запуска приложений Android в Anbox на Ubuntu, а не на других дистрибутивах.
Установка Anbox на Ubuntu 16.04 LTS и 18.04 LTS
Когда служба snapd установлена на вашем компьютере Linux, вы готовы к установке Anbox. Используйте следующую команду, которая установит все необходимое:
snap install —classic anbox-installer && anbox-installer
Введите свой пароль, когда появится запрос, и пакет snap загрузится.
Вскоре после этого вы увидите выбор:
- Установить Anbox
- Деинсталлировать Anbox
Если позже вам понадобится удалить программу, просто повторно запустите вышеуказанную команду установщика и выберите вариант 2. В случае установки Anbox вы можете выбрать вариант 1.
После этого вы увидите краткое описание того, что будет сделано в процессе установки. Потратьте время на прочтение.
Вы увидите в списке файлы, добавленные из PPA. Также должно появиться уведомление о том, что программа выполнения anbox будет автозапускаться при входе в Linux. (Это программная библиотека, которая позволяет запускать другие программы и приложения).
Если вас все устраивает, введите I AGREE и дождитесь установки Anbox. После этого следуйте инструкциям по перезагрузке системы, прежде чем продолжить.
Установка Anbox в Ubuntu 20.04 LTS
Установка Anbox немного отличается на Ubuntu 20.04 LTS. Полный релиз программы не выходил с 2019 года, а изменения в ядре Linux за это время привели к необходимости выпустить Anbox только в виде бета-сборки.
Во-первых, убедитесь, что snap установлен. Поскольку вы используете последнюю сборку Ubuntu, она должна быть установлена, но на всякий случай проверьте это:
snap find hello
Это приведет к отображению списка привязок “hello world”, подтверждая, что привязка установлена.
Затем вы можете приступить к установке бета-версии Anbox:
sudo snap install —devmode —beta anbox
Подождите, пока он установится, затем перезагрузите компьютер.
Загрузка файлов APK на ваш компьютер Linux
После перезагрузки компьютера вы должны найти Anbox в меню рабочего стола. Нажмите на него для запуска – вскоре вы увидите окно Anbox.
Если ничего не происходит, или вы застряли на заставке с сообщением Starting, отмените запуск или дождитесь его окончания. Затем откройте новый терминал и введите
Затем снова нажмите на значок в меню. Через несколько мгновений Anbox должен запуститься. (Это известная ошибка в дистрибутивах Ubuntu 16.04, и она не должна повлиять на более поздние дистрибутивы).
Запустив Anbox, вы увидите список основных приложений Android, которые можно запустить в Linux, например, Календарь и Электронная почта. Чтобы открыть эти приложения, просто щелкните по ним левой кнопкой мыши; они появятся в новых окнах, размер которых можно изменять по мере необходимости. Если вам нужен браузер, в комплект входит оболочка WebView Shell.
Установка приложений Android из Google Play и не только
Чтобы добавить собственные приложения и игры, достаточно загрузить (или скопировать с другого устройства) соответствующие файлы APK. Это файлы установщика, такие как DEB-файлы (или snaps) в Linux или EXE-файлы в Windows. Если вы запустите APK в Ubuntu с помощью Anbox, он установится как любое другое приложение Android.
У вас есть два варианта установки приложений на Anbox:
- Sideload
- Установить Google Play
Sideloading относительно прост. Вы можете использовать браузер и эти альтернативы Google Play для добавления программ в Anbox. Если вы выберете загрузку APK, вам нужно будет включить установку из неизвестных источников:
- Откройте меню Настройки на экране приложений
- Нажмите Безопасность
- Включить неизвестные источники
- Нажмите OK, чтобы согласиться.
Однако существует проект на GitHub, Anbox Playstore Installer, который делает процесс установки приложений в Anbox таким же простым, как на телефоне или планшете.
Для начала откройте Терминал и введите:
sudo apt install wget curl lzip tar unzip squashfs-tools
Затем загрузите скрипт Anbox Playstore:
Сделайте его исполняемым:
chmod +x install-playstore.sh
Затем запустите скрипт:
Запустите Anbox, если он не загрузился автоматически:
Затем установите правильные разрешения в Android.
- Откройте Настройки
- Перейдите в раздел Приложения > Службы Google Play
- Нажмите Разрешения, затем включите все разрешения
- Повторите эти действия для Приложения > Google Play.
- Установите разрешения для Google Play
Теперь вы можете устанавливать в Anbox приложения Android из Google Play.
Другие способы запуска приложений Android в Linux
Хотя Anbox и является надежным вариантом, это не единственный способ запуска приложений Android на Linux. Наряду с Anbox вы также можете попробовать:
Существуют также две операционные системы на базе Android, совместимые с компьютерами x86, которые позволят вам устанавливать приложения Android:
Anbox может иметь некоторые проблемы со стабильностью. Тем не менее, обнадеживает тот факт, насколько просто настроить, установить и запустить приложения Android на Linux Ubuntu с помощью Anbox.
Источник