Android: Подготовка к разработке

Вступление

Android - бесплатная операционная система, основанная на Linux с интерфейсом программирования Java.

Android поддерживает 2D и 3D-графику, используя библиотеки OpenGL, а также хранение данных в базе данных SQLite.

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

Основные компоненты Android

  • Activity (Активность, Деятельность) — представляет собой экран пользовательского интерфейса, который представлен классом Activity и разметкой в виде XML-файла (разметку можно создать и программно, но теперь так не делают). Android-приложение способно состоять из нескольких форм (Activity) и может переключаться между ними во время выполнения приложения
  • Intents (Намерения) — асинхронные сообщения, которые позволяют приложению запросить функции из других служб или действий. Приложение может делать прямые запросы службе или действию (явное намерение) или запросить у Android зарегистрированные службы и приложения (неявное намерение). Для примера, приложение может запросить через Intent приложение Контакты для получения данных или запустить браузер при нажатии ссылки в тексте вашего приложения.
  • Views (Представление, Вид, Элемент управления, Компонент) — пользовательский интерфейс, создаваемый виджетами классов. Это знакомые нам элементы управления: кнопки, текстовые поля, флажки, переключатели и т.п.
  • Services (Службы) — выполняют фоновые задачи без предоставления пользовательского интерфейса (например, проигрывание музыки). Они могут уведомлять пользователя через систему уведомлений Android.
  • Content Provider (Контент-провайдер) — предоставляет данные приложениям. С помощью контент-провайдера ваше приложение может обмениваться данными с другими приложениями.
  • Broadcast Receiver (Приемник широковещательных сообщений/запросов) — принимает системные сообщения и неявные намерения, может использоваться для реагирования на изменение состояния системы. Приложение может регистрироваться как приемник определенных событий и может быть запущено, если такое событие произойдет.

Если у вас появилось желание разрабатывать приложения для телефонов под управлением Android, то вам необходимо тщательно подготовиться и установить весь необходимый инструментарий для работы.

Установка Android Studio

Первые три года существования сайта с уроками я использовал Eclipse. Затем я стал потихоньку переделывать статьи под Android Studio и этот процесс продолжается по сей день. С мая 2013 по июнь 2014 студия прошла путь от версии 0.1 до 0.8. А 8 декабря 2014 года вышла версия 1.0.

Важно понимать, что само приложение пишется на Java, а среда разработки выбирается по вкусу. То, что можно сделать на Android Studio, можно сделать и на Eclipse и в других редакторах. Хотя с 2016 официальная поддержка Eclipse прекращается.

Скачать установочный пакет для студии можно со страницы http://developer.android.com/sdk/index.html

Сама установка проблем вызвать не должна. Установочный пакет включает в себя необходимый минимум. Иногда вам необходимо запускать Android SDK Manager и проверять наличие новых версий SDK через меню Tools | Android | SDK Manager:

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

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

Создание эмуляторов

Для отладки приложений используется эмулятор телефона - виртуальная машина, на которой будет запускаться наше приложение. Также можно использовать и реальное устройство.

Чтобы создать эмулятор телефона, выбираем в меню Tools | Android | AVD Manager. При первом запуске появится диалоговое окно мастера.

emulator.png

Нажимаем кнопку Create a virtual device и в новом окне видим набор возможных эмуляторов, в том числе и для часов. Скачайте необходимые эмуляторы. Для начала вполне подойдёт один эмулятор.

emulator2.png

Вводим любое понятное имя, например, Android4. Выбираем нужную версию Android, размер экрана и т.д.

При необходимости можно создать эмуляторы для каждой версии ОС и проверять программу на работоспособность. Остальные настройки можно оставить без изменений. Вы всегда можете вернуться к настройкам и отредактировать снова. Часто рекомендуют использовать опцию Use Host GPU, чтобы задействовать возможности графического процессора. Это даёт прирост скорости эмулятора. Нажимаем кнопку OK.

Добавленные эмуляторы будут храниться в менеджере эмуляторов.

emulator4.png

Если вы создали несколько эмуляторов, то выделите нужный и нажмите кнопку с зелёным треугольником для запуска эмулятора. Значок карандаша позволяет отредактировать настройки. Но обычно эмулятор не запускают отдельно. Когда вы будете запускать приложение, то студия сама предложит запустить эмулятор.

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

Если вы всё же попались в эту ловушку, то дам ссылку по смене папки пользователя на английский:http://www.cherneenet.ru/lokalnaj_zapis.html (спасибо читателю Евгению Степанову за подсказку). Также можно подправить ini-файл и прописать путь к виртуальному устройству таким образом, чтобы в пути не встречались русские буквы (соответственно, сам файл *.avd также нужно переместить в другое место).

В зависимости от мощности компьютера нужно немного подождать, чтобы сначала загрузился эмулятор. Эмулятор от Intel загружается на порядок быстрее, но его установка немного сложнее. Информацию можно поискать у них на сайте. Существуют и альтернативные эмуляторы, например, Genymotion. Я в последнее время использую старый телефон.

К сожалению, очень часто бывает так, что при первом запуске эмулятор загружается, а приложение в нём не запускается. Это происходит от того, что во время загрузки эмулятора ваш компьютер теряет связь с ним. В этом случае вам нужно перезагрузить сервисы. Это можно сделать различными способами - через диспетчер задач, с помощью командной строки и даже в самой Студии. Вот как я делаю через Студию. Через меню Tools | Android | Monitor (DDMS included) запускаем окно Android Debug Monitor. В этом окне есть маленький треугольник, направленный вниз. Нажимаем на него и выбираем пункт reset adb.

Иногда помогает повторный запуск приложения. Если эмулятор не потерял связь с компьютером, то при повторной попытке приложение загрузится без проблем. Повторяю, что эта проблема возникает при первой загрузке эмулятора. Далее, во время работы не закрывайте эмулятор.

Upd: Вроде эту проблему решили, эмулятор стал работать стабильнее.

Тестируем на реальном устройстве

Окончательную версию приложения желательно проверять на настоящем устройстве. Начиная с Android 4.4, на устройстве (планшет, телефон, часы) нужно активировать режим разработчика. Для этого идём в Настройки, там открываем страницу "О телефоне" и щёлкаем семь раз на строчке с номером сборки Build number. После этого в настройках появится новый пункт Для разработчиков или что-то в этом роде, если производитель использует свою оболочку.

Открыв страницу для разработчиков, вам нужно включить отладку через USB. Также я включаю опцию Не выключать экран. Для некоторых устройств требуется установить отдельный драйвер, ищите информацию на сайте у производителей.

Работаем в режиме терминала

Студия также позволяет запускать команды командной строки в отдельном окне Terminal. Для удобства следует немного настроить систему под себя.

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

Для Windows 7/8 откройте Панель управления | Система, нажмите кнопку Advanced System Settings. В новом окне нажмите кнопку Environment Variables.

Найдите переменную Path в списке System variables

Нажмите на кнопку Edit для редактирования переменной. Добавьте в конце строки точку с запятой, а затем укажите пути к папкамplatform-tools и tools, которые входят в состав SDK. В моём случае получилось следующее:

;D:\Android\SDK\platform-tools;D:\Android\SDK\tools

Закройте все окна. Проверьте, правильно ли всё работает. Запустите командную строку и введите команду:

echo %path%

Вы должны увидеть строку с перечислением всех путей, входящих в переменную Path, в том числе и ваши.

Для следующей проверки введите команду:

adb

Запустится перечень параметров команды.

Также попробуйте команду:

android

Запустится окно SDK Manager.

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

Теперь проделаем эти операции в самой студии. Запустите студию и откройте проект (см. следующий урок). Внизу в строке состояния есть вкладка Terminal. Переключитесь на неё. В окне терминала введите любую из двух предыдущих команд.

Terminal

Документация

Последнюю версию документации всегда можно найти по адресу developer.android.com. Если у вас возникли проблемы с интернетом, то в подпапке /docs в вашей папке установленной Android SDK можно найти ее локальную копию (если вы не отказывались от её установки).

http://developer.alexanderklimov.ru/android/android1.php

Категории: 

Метки: