Linux для разработчиков android

Пишем и собираем приложения для Android в linux консоли

В данной статье я покажу как можно собрать apk файл в Ubuntu используя лишь
утилиты командной строки.

Обычно для создания приложений для Adroid используется Android Studio. Но для сборки небольших программ можно обойтись командной строкой. Например, когда ресурсы компьютера ограничены и ваше приложение очень простое.

В качестве постоянной среды разработки это, возможно, не очень удобно, но если вам нужно
иногда собирать какие-нибудь мелкие утилиты — это в самый раз.

Введение

Разработка под Android не является основным направлением моей деятельности, я иногда делаю какие-то небольшие приложения для своих нужд.

Раньше я использовал QPython, но он достаточно тяжел и неудобен в работе. Поэтому я перешел к разработке нативных программ. Даже при поверхностном знании Java
это не составляет больших трудностей.

Данное руководство в большой степени базируется на этом документе: Building an Android App
from the Command Line. Кому интересны подробности, обращайтесь к первоисточнику.

Похожая статья: Пишем, собираем и запускаем HelloWorld для Android в блокноте уже встречалась на этом ресурсе, но в ней было рассмотрена разработка в Windows.

Здесь же я рассмотрю, как можно собрать приложение в linux.

Железо

Тестирование проводилось на стареньком нетбуке с процессором Атом, 1Гб ОЗУ
и 8Гб SSD диска.

Операционная система

Я тестировал приложение на Ubuntu 17.04. Начиная с Ubunu 16.04 android-sdk можно установить через пакетный менеджер.

В принципе, тот же SDK можно
скачать с сайта.
Качать файл из раздела ‘Get just the command line tools’
По сути это не сильно меняет процесс, но через пакетный менеджер все гораздо проще.
Разница будет лишь в путях и установке дополнительных пакетов «android-platform».

Установка пакетов

Итак, приступим к установке.

Будет установлено большое количество пакетов, включая Java.

Далее, в зависимости от требуемой версии Android, необходимо установить нужную
версию пакетов. Для lolipop 5.1 необходимо ставить:

Так же необходимо установить дополнительный пакет.

Если вы планируете устанавливать apk-пакет через adb, то необходимо немного дополнительных настроек.

Настройка adb

С помощью lsusb найти подключенное устройство

И создать файл с правилом:

В файл добавить одну строку:

Здесь «1782» взято из вывода lsusb.

После подключения через adb, на устройстве необходимо подтвердить соединение.

Теперь все готово к работе.

Постановка задачи

Приложение, которое будем собирать немного сложнее, чем ‘Hello world’.

  • Требуется по нажатию кнопки взять строку из буфера обмена.
  • Вырезать подстроку
  • Записать подстроку обратно в буфер.
  • С помощь Toast вывести подстроку или сообщение об ошибке.

В общем-то все просто.

Я подготовил пример который возьмем за основу.

Создание подписи

Сначала создадим ключ для подписи файла:

Это нам пригодится позже.

Манифест

Здесь указываем имя приложения в атрибуте «android:label». Так же приложение будет использоваться свою иконку, она указана в атрибуте «android:icon». Сама иконка лежит в каталоге «res/drawable-mdpi» файл «icon.png». В качестве иконки можно взять любой небольшой png файл.

Layout

Файл с расположением элементов находится в каталоге «/res/layout/».

В него можно добавлять виджеты, если вы захотите расширить функционал.

Исходный код приложения

Исходный код приложения находится здесь «java/ru/kx13/extractvidid»

Код весьма прост и примитивен, но этот шаблон можно использовать в других приложениях.

Скрипт для сборки

Я не стал использовать утилит сборки типа make или ant, т.к. весь код находится в одном файле и особых преимуществ это не даст. Поэтому это обычный shell скрипт:

Читайте также:  Триколор мультиэкран для android тв

Некоторые замечания по поводу путей.

  • По умолчанию, переменная BASE указывает на путь, в который пакетный менеджер сохраняет файлы. Если вы ставите SDK вручную, то путь надо будет изменить.
  • Если вы используете версию API отличную от 22, то вам надо подправить переменные BUILD_TOOLS и PLATFORM

Сборка и установка

Для сборки просто запустите

Если все настроено правильно никаких сообщений не будет выведено, а в каталоге «build» появится файл «Extractor.apk»

Теперь надо установить наше приложение

Если все прошло нормально, на устройстве появится новое приложение. Можно запускать и пользоваться.

В общем случае можно перекинуть файл apk на устройство любым удобным способом.

Заключение

Как видно из статьи начать разработку в консоли совсем несложно.

Консольные утилиты позволяют разрабатывать программы при весьма небольших ресурсах.

Источник

Сборка 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 архитектуры, то при линковке получим ошибку:

Читайте также:  Com google android gms maps mapfragment
Исправление

Вместо пакетов 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 Studio в Ubuntu 20.04

Android Studio — это официальная и самая популярная интегрированная среда разработки Android-приложений. Программа разрабатывается корпорацией Google и содержит все необходимые возможности. Среда основана на IntelliJ IDEA, которая написана на Java.

Среди возможностей Android Studio не только написание, сборка и тестирование программ, но и поддержка загрузки их на устройство, интеграция с облаком и многое другое. В этой статье мы рассмотрим, как выполняется установка Android Studio в Ubuntu.

Системные требования Android Studio:

Рекомендованные системные требования:

  • Дистрибутив — любой 64 битный дистрибутив с установленной glibc 2.31 или выше и окружением рабочего стола Gnome, KDE или Unity DE.
  • Процессор — 64-битный, с поддержкой SSSE3 и Intel VT или AMD V;
  • RAM — 8 Гб или больше;
  • Свободное место на диске — 8 Гб;
  • Разрешение экрана — 1280 x 800;

Установка Android Studio в Ubuntu

Вы можете установить Android Studio и Android SDK несколькими способами: c помощью snap-пакета, с официального сайта, из центра приложений, а также с использованием специального инструмента: JetBrains Toolbox. Каждый из способов имеет свои преимущества, и мы рассмотрим их все.

1. Установка из snap-пакета

Для установки Android Studio с помощью snap-пакета откройте терминал и выполните команду:

sudo snap install android-studio —classic

После завершения загрузки пакета программа будет доступна в главном меню.

2. Установка из центра приложений

Запустите центр приложений Ubuntu и введите в поиске название программы:

Читайте также:  Камера серийная съемка андроид

В списке выберите Android Studio и нажмите на кнопку Установить.

Дождитесь, пока инсталляция будет завершена.

Процесс установки может занять до 30 минут (зависит от скорости вашего интернет-соединения). По окончании загрузки вы сможете запустить приложение.

3. Установка с официального сайта

Прежде всего, вам необходимо загрузить установщик с официального сайта разработчиков. Перейдите на сайт и нажмите Download Android Studio.

Ознакомьтесь с лицензионным соглашением, активируйте чекбокс и нажмите кнопку Download Android Studio for Linux.

Выберите Сохранить файл и нажмите ОК.

Дождитесь завершения скачивания.

Когда файл будет загружен, перейдите в папку с загрузками и распакуйте содержимое архива в /opt. Для этого используйте команду вида (укажите скачанную вами версию приложения вместо 202.7486908):

/Загрузки/android-studio-ide-202.7486908-linux.tar.gz -C /opt

Чтобы добавить ярлык в меню приложений, создайте файл androidstudio.desktop командой:

Добавьте в файл следующий текст и сохраните его:

[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Exec=»/opt/android-studio/bin/studio.sh» %f
Icon=/opt/android-studio/bin/studio.png
Categories=Development;IDE;
Terminal=false
StartupNotify=true
StartupWMClass=android-studio

После этого установка будет завершена, и вы можете запустить среду разработки из главного меню:

Но окончательная установка Android Studio ещё не завершена — программа должна скачать все необходимые компоненты и настройки. Если вы работали с Android Studio ранее, в следующем окне вы можете скопировать свои настройки. Если нет, — выберите Do not import settings и нажмите ОК.

Потребуется некоторое время, чтобы программа могла загрузить нужные компоненты и настроить систему.

Приложение спросит, нужно ли отправлять статистику в Google. Эти данные могут использоваться для улучшения следующих версий Android Studio. Определитесь с выбором, чтобы продолжить установку.

На следующем экране нажмите кнопку Next:

После этого вы сможете выбрать между стандартной автоматической инсталляцией и ручной. Второй способ позволяет выбрать для установки отдельные компоненты.

Выберите предпочитаемую тему оформления:

Ознакомьтесь со списком компонентов и их расположением:

Приложение отобразит уведомление о том, можете ли вы использовать эмуляторы на своём компьютере (зависит от аппаратной составляющей).

Далее начнётся загрузка, которая может занять довольно много времени, скорость зависит от вашего интернет соединения:

Можно нажать кнопку Show Details, чтобы наблюдать очерёдность установки компонентов:

Когда загрузка завершится, вы можете нажать Finish и перейти к созданию нового проекта.

4. Установка в JetBrains Toolbox

JetBrains Toolbox — это официальный инструмент для установки и пакетного обновления Android Studio и других продуктов JetBrains. Загрузить JetBrains Toolbox можно с официального сайта разработчиков.

После этого перейдите в директорию, куда был скачан архив. Например, если это папка Загрузки, выполните команду:

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

tar -xzvf jetbrains-toolbox-1.20.8804.tar.gz

Перейдите в созданную директорию:

Чтобы запустить менеджер пакетов, введите команду:

После запуска Toolbox найдите Android Studio в списке и нажмите кнопку Install:

Подтвердите, что вы прочитали и принимаете лицензионное соглашение, после чего нажмите кнопку Install Android Studio.

Дождитесь, пока программа установится на ваш компьютер. После установки её можно будет запустить из главного меню Toolbox.

Как удалить Android Studio

Если вы устанавливали Android Studio с использованием snap-пакета или через центр приложений Ubuntu, её можно удалить командой:

sudo snap remove android-studio

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

sudo rm -Rf /opt/android-studio

Программа, установленная с помощью JetBrains Toolbox, удаляется с использованием этого инструмента. Перейдите в Toolbox, нажмите на значок шестерёнки рядом с Android Studio и выберите Delete.

Выводы

В этой статье мы рассмотрели, как выполняется установка Android Studio в Ubuntu 20.04 различными способами. Можете выбрать тот способ установки, который лучше всего подходит именно для вас. Если остались вопросы, задавайте их в комментариях.

Источник

Оцените статью