Оболочка android для ubuntu
1.
Ubuntu Touch представляет собой мобильную платформу, разработанную компанией Canonical Ltd. длясмартфонов. Ubuntu Phone призвана обеспечить удобство работы как в Ubuntu Desktop Edition. ОС была анонсирована 2 января 2013 года и официально публично показана на выставке Consumer Electronics Show 8-11 января 2013 года.
2.
Интерфейс
Пользователь может получить доступ ко всей системе, проводя пальцами по экрану. Левая часть даёт вам мгновенный доступ к закреплённым в меню приложениям, а также приборную панель, которая является стартовым меню для всех приложений, файлов и контактов.
Эта функция, так же, как и та, которую вы можете найти на рабочем столе Ubuntu, даёт возможность изменить настройки системы с помощью индикаторов на верхней панели.
Ubuntu Phone имеет функцию многозадачности, и пользователь может переключиться на предыдущее приложение, просто проведя пальцем справа налево. Чтобы переключиться обратно, необходимо использовать панель на левой стороне дисплея.
Что касается нижней части, здесь она используется, чтобы показать или скрыть панель инструментов текущего приложения. Благодаря этому Ubuntu Phone позволяет любому приложению работать в полноэкранном режиме по умолчанию (то есть без рамок, в отличие от iOS и Android Linux, или механических кнопок, их заменяющих).
3.
Ubuntu Phone базируется на настольной Desktop версии Ubuntu с заменой стандартной графической оболочки на мобильную версию Unity. Её интерфейс базируется на Qt и QML. Ubuntu Phone использует модифицированные Advanced Packaging Tool репозитории для получения и обновления программного обеспечения, так что пока система стоит отдельно от ПК версии Ubuntu и приложения, не адаптированные под малый экран, пока что не могут быть установлены по умолчанию. Система может быть использована со стандартным ядром Android Linux, а это означает, что она будет устанавливаться на самые новые смартфоны.
Программы для Ubuntu Phone OS могут быть написаны не только с помощью Qt, но и с помощью других механизмов, таких как HTML5. Ubuntu (на всех устройствах) предусматривает возможность приложению, написанному на HTML5, использовать все системные лотки (например, уведомления) и могут быть легко интегрированы в интерфейс.
На включённом Ubuntu Phone привычный экран блокировки отсутствует (разработчики объяснили это отсутствием необходимости), хотя разблокировка SIM-карты, вероятно, должна быть на своем месте. Вместо этого есть функциональный «экран приветствия». Окружение меняется в процессе использования, что довольно интересно. Оно отображает статус пользователя и последние события на экране приветствия в комплекте с анимированным стилизованным кругом.
Телефон может быть оснащен полноценной Ubuntu и трансформироваться в Desktop версию Ubuntu Linux при соединении с док-станцией. При подключении устройство может использовать все возможности Ubuntu и пользователь получает возможность выполнять офисную работу или даже играть в ARM-совместимые игры на таком устройстве.
Кроме того, Ubuntu Phone можно подключить к учётной записи Ubuntu One и обмениваться фотографиями и файлами в облаке. Ubuntu One Music Store также имеется на данной платформе и имеет весь необходимый функционал, включая возможность покупки и воспроизведения музыки.
Источник
5 лучших эмуляторов Android для Linux
1. Genymotion
Genymotion — это один из самых популярных эмуляторов Android, доступных в Linux (кстати, он также доступен в Windows и macOS), который вы можете попробовать, и на сегодняшний день он один из лучших. В отличие от большинства эмуляторов, Genymotion имеет красивый интерфейс.
Вы можете создать виртуальное устройство и просто подключиться к нему. По умолчанию виртуальные устройства в Genymotion поставляются с базовыми возможностями, но если вы хотите установить приложения из Play Store, Genymotion дает вам удобную кнопку для установки Open Gapps на ваше виртуальное устройство всего за пару кликов.
Это довольно круто, и после установки Gapps вы можете установить практически любое приложение, которое захотите попробовать. Genymotion идеально подходит не только для того, чтобы попробовать случайное приложение для Android, которое вы нашли, но и для тестирования приложения, которое вы разрабатываете самостоятельно.
Эмулятор поставляется с набором потрясающих функций, предназначенных для разработчиков, включая тот факт, что полностью поддерживается Android Studio, поэтому вы можете напрямую запускать свое приложение из Android Studio и открывать его в эмуляторе.
Genymotion поставляется с эмуляторами под управлением Android версии 4.1, вплоть до Android 9.0 Pie и в различных форм-факторах от смартфонов до планшетов и даже пользовательских размеров экрана, которые могут пригодиться, если вы проверяете, как выглядит пользовательский интерфейс вашего приложения в различных форм-факторах.
Если вы ищете эмулятор для игр на Android, Genymotion, вероятно, не для вас. Я попытался установить PUBG Mobile и Free Fire на него, но он просто говорит, что устройство несовместимо. Я установил Pigeon Pop на него, и все прекрасно работает, но были видимые задержки ввода, которые неприемлемы, для комфортной игры.
Тем не менее, когда я пытался установить Genymotion на наш HP Envy с Ubuntu 18.04.1, у него были проблемы с Virtual Box, хотя Virtual Box был установлен правильно. Если вы сталкиваетесь с такими же проблемами, это может быть связано с тем, что в вашей системе включена безопасная загрузка UEFI.
Видимо, это вызывает проблемы с Virtual Box. Чтобы преодолеть это, вы можете использовать mokutil и отключить безопасную загрузку на своем ноутбуке, после чего Virtual Box должен нормально работать, и вы сможете легко запускать Genymotion. Вы можете посетить эту страницу Ubuntu Wiki для подробного руководства о том, как использовать mokutil для отключения безопасной загрузки.
2. Android-x86
Если Genymotion не подходит для ваших целей, и вы действительно хотите запустить Android как виртуальную машину в вашей Linux системе, Android-x86, вероятно, то, что вы ищете. Программное обеспечение фактически предназначено, как порт Android для систем на базе x86.
Это проект с открытым исходным кодом, это означает, что вы можете проверить код, если это вас интересует. Тем не менее, лучшая часть проекта Android-x86 заключается в том, что он обновляется довольно часто и в настоящее время имеет стабильный релиз который доступен, на базе Android Oreo.
Установить Android-x86 в вашей системе Linux довольно просто. Вам нужно загрузить ISO-файл Android-x86 в свою систему, создайть новую виртуальную машину в Virtual Box и установить ISO в качестве загрузочного устройства. Оттуда вы можете легко установить Android на свою виртуальную машину.
В целом, Android-x86 чувствует себя немного менее отзывчивым, чем Genymotion, но это не проблема, особенно если вы просто собираетесь использовать его для тестирования приложений. Если вам нужны игры, то Android-x86, вероятно, не тот эмулятор, который вам нужен.
3. Android SDK
Если вы разработчик и хотите использовать эмулятор, который официально поддерживается Google и позволяет создавать несколько виртуальных устройств, под управлением чего-либо от Android Lollipop до Android Pie, WearOS и даже Android TV тогда, вам нужен официальный менеджер Android Virtual Device (или AVD Manager), включенный в Android Studio.
Вам просто нужно установить Android Studio на вашей системе на базе Linux, и как только вы запустили программное обеспечение, вы можете просто перейти к «Tools -> AVD Manager«, чтобы создать свое первое виртуальное устройство в Android Studio.
Однако самая большая причина, по которой многие разработчики предпочитают использовать сторонний эмулятор вместо официального от Google, заключается в том, что он загружается довольно медленно. Конечно, со временем все улучшилось, но не настолько, чтобы обогнать по скорости Genymotion.
Однако для разработчиков это определенно самый гибкий вариант. В конце концов, он не только предлагает возможность создавать несколько виртуальных устройств под управлением чего-либо от Android 5 до Android 9 Pie, он также позволяет создавать виртуальные устройства Android TV и виртуальные устройства WearOS.
Так что вы можете протестировать свои приложения, во всех наиболее часто используемых операционных системах Google. Кроме того, эмулятор поставляется со всеми функциями, которые могут вам понадобиться для тестирования вашего приложения.
Вы можете повернуть эмулятор, изменить местоположение, батарею и условия сети, использовать камеру и многое другое с эмулятором Android Studio. Если вы разработчик, вам обязательно стоит попробовать его, прежде чем проверять другие эмуляторы.
4. Anbox
Anbox — один из самых уникальных эмуляторов Android в этом списке. Это не столько эмулятор, сколько своего рода Android Run Time (ART) в «песочнице», которая работает в системах GNU / Linux. Поставляется с версии Android 7.1 — что очень удобно для эмулятора.
Единственная причина, по которой Anbox так далеко в списке, заключается в том, что у него есть некоторые явные проблемы. Для начала, эмулятор не поставляется с установленным Google Apps на нем, что означает, что нет Play Store, нет Play Services и т. д. Итак, если вы планируете установить, скажем, PUBG Mobile, вы столкнетесь с множеством проблем.
Я попытался установить казуальную игру (Pigeon Pop), для которой требуется установить Play Games на устройство, которое Anbox не поддерживает. Так что да, есть проблемы.
Кроме того, если вы разработчик, который пытается протестировать собственное приложение на Anbox, вы не сможете просто перетащить, чтобы установить его. Вместо этого вам придется использовать ADB для установки APK на Anbox с помощью команды ‘adb install
Что еще хуже, так это то, что установка Anbox может быть немного «затруднительна» для начинающих пользователей Linux. Это двухэтапный процесс, где вы должны сначала установить несколько модулей ядра, а затем загрузить саму «основу» Anbox, прежде чем запускать среду выполнения.
К счастью, веб-сайт Anbox делает довольно солидную работу, объясняя, как можно сделать это. Имейте в виду, что если вы столкнетесь с проблемами при загрузке модулей ядра, вы можете столкнуться с той же проблемой, что я описал с Genymotion, поэтому попробуйте использовать то же решение.
5. ARChon
Если вы хотите запускать приложения Android в своей системе Linux без необходимости устанавливать для них отдельный эмулятор, ARChon может вас заинтересовать. ARChon в основном позволяет запускать приложения для Android в Chrome.
Таким образом, вы можете проверять приложения, не беспокоясь о загрузке эмуляторов, создании виртуального устройства или о проблеме с безопасной загрузкой UEFI, которая возникла в Genymotion.
Archon просто устанавливается как расширение Chrome в вашей системе (есть инструкции на веб-сайте) и оттуда вы можете использовать любой из различных инструментов, упомянутых на веб-сайте, для конвертации приложения для Android, в приложения, совместимые с ARChon, и просто запускать их прямо в Chrome.
Я опробовал на примере приложения 2048, которое предоставляет ARChon, и оно работает довольно хорошо, и я совершенно уверен, что большинство других простых приложений, таких как это, будут работать без проблем с использованием ARChon.
Это были 5 лучших эмуляторов Android для Linux, которые, могут вам понравиться. Если вы хотите протестировать разрабатываемое приложение или просто опробовать новое приложение для Android на своем ПК с Linux, эти эмуляторы должны соответствовать вашим ожиданиям.
Мы пытались найти эмулятор, который могли бы порекомендовать и для игр, но, к сожалению, никто не привлек наше внимание. Тем не менее, если вы знаете об эмуляторе Android для Linux, который хорошо работает в играх, сообщите об этом в комментариях внизу.
Источник
Сборка 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 перенесли в другую директорию и это исправление попало в сборочные скрипты для старых версий, а вот местоположение не изменили.
Исправление
Указать при запуске эмулятора расположение ядра, путь относительно корня сборки:
Источник