Наш магазин на eBay Наш магазин на AliExpress Наш канал в telegram

Начало работы с Android Studio в ОС Windows

Введение

Самое трудное при изучении чего-то нового, — это начать. С Android Studio ситуация ровно такая же, — многие боятся просто начать. Тем временем, согласно анализу Gartner, на 2021 год общее количество смартфонов превышает суммарное количество ПК, ноутбуков и планшетов вместе взятых более чем в два раза. При этом примерно 3/4 смартфонов используют в качестве ОС именно Android (как, кстати, и часть планшетов). В общем, Android рулит, а значит нужно обязательно учиться программировать под эту ОС. Вот этим мы сегодня и займёмся.

Установка Android Studio

Самая популярная среда разработки под Android называется Android Studio. Она распространяется совершенно бесплатно, — просто заходим на https://developer.android.com/ и тыкаем по крупному прямоугольнику с надписью «Download Android Studio». После этого вы окажетесь на странице загрузки, которая автоматически определит вашу ОС и предложит вариант установки новейшей версии студии, подходящей именно под эту ОС. При желании, однако, вы можете в нижней части страницы выбрать другие варианты загрузки (под другие ОС). Ещё ниже можно найти системные требования для установки под различные ОС. Написано, что из линейки Windows нужно иметь Win8 или 10, но под Win7 тоже работает. Системные требования, кстати, в настоящий момент совсем не маленькие — минимум 8 гигов рамы и 8 гигов на винте.

Итак, жмём «Download Android Studio», во всплывающем окне читаем и принимаем лицензионное соглашение, после чего нажимаем «Download Android Studio for Windows» и скачиваем установочный исполняемый файл (.exe). Остаётся только запустить этот файл и установить студию в указанное место на жёстком диске.

Сразу размещу здесь ссылку на документацию по Android: https://developer.android.com/guide/. Если уж вы решили программировать под андроид — смело можете добавлять эту ссылку в закладки своего браузера (и заодно учите английский — вся дока на английском).

Настройка версий SDK

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

Набор инструментов, необходимый для разработки под ту или иную версию Android называется SDK (software development kit). Сюда входят библиотеки, документация, исходники, примеры, инструменты для сборки и так далее. Название SDK совпадает с названием версии Android, под которую будет вестись разработка. Каждой версии SDK соответствует свой номер (уровень) API (Application Programming Interface), определяющий какой набор структур и функций может использовать приложение. API, в отличии от SDK просто нумеруются целыми числами, начиная с единицы. Таким образом чем больше уровень API — тем старше версия Android.

SDK настраивается следующим образом:

  • Запускаем Android Studio (если автоматически открылся какой-то проект, то его нужно закрыть). В итоге появится начальное окно, в левой части которого находится список ранее открывавшихся проектов, а в правой части — список возможных действий для начала работы.
  • В нижней части начального окна выбираем пункт Configure и далее, в выпадающем меню, — пункт SDK Manager:
    картинка - запуск SDK-менеджера

    начальное окно Android Studio

    [свернуть]
  • В открывшемся окне нужно выбрать одну или несколько версий SDK, (в соответствии с версиями Android, под которые вы собираетесь кодить) и нажать Apply (в результате выбранные версии SDK автоматически будут скачаны и установлены):
    картинка - выбор и установка SDK

    выбор версий SDK

    [свернуть]

    Как видите, в этом окне для каждой версии SDK написан соответствующий ей уровень API. Кстати, если установить галочку напротив Show Package Details, то можно будет просмотреть детали выбранного пакета и более гибко настроить его установку (например, скачать исходники). Только не забывайте про место на жестком диске, поскольку версий SDK много и весят они тоже очень много, — гигабайты улетают на раз.

Создание виртуального устройства для тестов

Следующее, что нам понадобится — это виртуальное устройство, на котором мы будем тестировать и отлаживать наши программы. Для его создания нужно сделать следующее:

  • Переходим к начальному окну (просто закрываем открытый проект), в нижней части выбираем пункт Configure, а в выпадающем меню теперь выбираем пункт AVD Manager:
    картинка - запуск AVD-менеджера

    начальное окно Android Studio

    [свернуть]
  • В результате откроется менеджер виртуальных устройств, в котором перечислены все существующие устройства (здесь же можно создать новые):
    картинка - окно AVD-менеджера

    окно менеджера виртуальных устройств

    [свернуть]
  • Для создания нового устройства нажимаем кнопку Create Virtual Device. В результате откроется окно со списком доступных устройств (для удобства они сгруппированы по типам), в котором необходимо выбрать нужное устройство и нажать кнопку Next.:
    картинка - окно выбора нового устройства

    окно менеджера виртуальных устройств

    [свернуть]
  • В следующем окне нужно выбрать версию ОС Android, которая будет установлена на созданном виртуальном устройстве. Выбираем версию из предлагаемого списка. Если выбранная версия подписана серым цветом, а в поле Release Name рядом с ней есть надпись «Download», — значит сначала для этой версии нужно скачать установочный образ (просто нажмите на «Download»):
    картинка - окно выбора устанавливаемого на устройство образа

    окно выбора устанавливаемого образа

    [свернуть]
  • Осталось только задать имя устройства, выбрать для него ориентацию по-умолчанию и нажать кнопку «finish», после чего только что созданное устройство появится в списке менеджера виртуальных устройств.
    картинка - завершение создания виртуального устройства

    завершение создания виртуального устройства

    [свернуть]

Вообще говоря, для отладки можно подключить к студии и реальное устройство (это делается через USB-кабель), но проще всё же не заморачиваться и пользоваться виртуальным, тем более что разных виртуальных устройств можно создать сколько угодно. Минусы их использования я вижу только в том, что они могут заметно подтормаживать и жрут слишком много дискового пространства.

Создание первого проекта, его логика и устройство

  • Для создания нового проекта нужно выбрать в начальном окне пункт «Create New Project» (вместо этого можно из меню другого открытого проекта выбрать пункт «File -> New -> New Project…»):
    картинка - создание нового проекта

    создание нового проекта

    [свернуть]
  • Теперь, в открывшемся окне, выбираем один из предзаготовленных шаблонов будущего проекта и жмём кнопку «Далее»:
    картинка - выбор шаблона нового проекта

    выбор шаблона нового проекта

    [свернуть]

    Шаблоны отличаются предзаготовленными экранными формами — Activity. Это некий аналог виндовых окон. Во время работы приложение переключается между этими формами (в каждый момент только одна из них активна и занимает весь экран). При этом никакой экранной формы в приложении может и вовсе не быть (шаблон «No Activity»). В дальнейшем, в приложении можно создавать дополнительные экранные формы, а созданные из шаблона менять по своему усмотрению. Для начала рекомендую выбрать что-то простое, например, «Empty Activity».
  • Наконец, в последнем окне нужно настроить создаваемый проект — прописать ему имя, место расположения (location), выбрать язык программирования (в настоящее время это Java или Kotlin), а также указать версию SDK, которая будет использоваться при разработке проекта:
  • картинка - настройка нового проекта

    конфигурирование нового проекта

    [свернуть]

    На страничке настройки есть два имени — Name и Package Name. Name — это имя проекта для вашей Android Studio и уникальным оно должно быть только для неё, а вот Package Name — это имя создаваемого пакета, по которому система андроид в вашем или любом другом телефоне будет понимать, установлено ли в ней то или иное приложение или нет, и уникальность этого имени должна быть глобальной.

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

Новый проект состоит всего из одного модуля, состоящего из нескольких папок (найдите их в проводнике):

  • manifests — здесь хранятся файлы конфигурации (AndroidManifest.xml)
  • java — здесь хранятся файлы с исполняемым кодом (MainActivity.java)
  • res — здесь хранятся ресурсы. В частности экраны хранятся в папке layouts. Если в качестве шаблона вы ранее выбрали «Empty Activity», то ваш первый, пока единственный и абсолютно пустой экран будет хранится в файле activity_main.xml

Создание экранов и начало работы с экранными формами

Работа с экранными формами чем-то напоминает работу в C++ Builder или Delphi, — при открытии файла activity_main.xml в левой части рабочей области у нас появляется палитра компонентов, которые можно перетащить мышкой к себе на экран. В терминологии Android визуальные (то есть отображаемые на экране) компоненты называются view (кнопка, поле ввода, чекбокс — это всё view). Если выбрать мышкой какой-либо компонент на экране, — справа появится список всех возможных атрибутов для настройки.

Вообще говоря, работать с xml-файлом экрана можно и в текстовом режиме, — в правом верхнем углу есть кнопки переключения отображения: code (текст), split (текст + визуальный режим), design (визуальный режим). Последний режим как раз выбирает отображение и настройку подобную билдеру. В любом случае, какой бы режим работы с визуальными компонентами вы не выбрали, — все визуальные объекты и их свойства будут храниться в соответствующем файле экрана в виде xml-разметки.

Для того, чтобы создать новый экран нужно щёлкнуть правой кнопкой мыши по папке layout в проводнике, выбрать в выпадающем меню пункт New-> Layout Resource File. Далее нужно ввести имя файла. Также можно выбрать квалификаторы, по которым ОС сможет автоматически определять, когда нужно использовать этот экран. При этом можно даже использовать уже имеющееся имя.
Скажем, если мы создадим ещё один экран activity_main.xml, но выберем для него квалификатор Orientation->Landscape, то у нас в папке layout появится ещё один экран с именем activity_main.xml, для которого в скобках будет указано land. Теперь при повороте экрана, наша программа будет автоматически переключаться к этому экрану.

Запуск первого проекта и первые ошибки

Для того чтобы запустить свой первый проект — просто выполните из меню команду Run ‘app’ (можно также нажать на зелёный треугольник на панели быстрого запуска или использовать горячие клавиши Shift+F10).

Итак, вы перенесли на экран несколько визуальных компонентов (пару кнопок, текст или что-то ещё) и решили запустить своё первое приложение. И тут же получите свои первые ошибки и ворнинги.

Ошибка missing constraints in constraint layout — не выставлено местоположение элемента относительно других. Дело в том, что даже если вы мышкой разместили компоненты на форме в нужных местах — этого ещё недостаточно для того, чтобы приложение понимало, где на самом деле должен располагаться ваш компонент и как он должен быть расположен относительно краёв экрана или других визуальных компонентов. Если вы переключитесь в режим текстового отображения xml-файла, то увидите, что в описании компонента нет ни слова про его расположение на экране.

Простейший вариант исправления этой ошибки: щёлкаем по элементу, затем справа, в атрибутах (attributes), выбираем вкладку layout и заполняем Constraint Widget (если щёлкнуть +, то поле заполнится автоматически, если потом щёлкнуть на точку — размер сотрётся). Здесь же мышкой можно указать относительно каких эементов экрана должен задаваться тот или иной размер. Попробуйте после этого переключиться в текстовый режим и посмотреть что изменилось в xml-разметке. Естественно, есть и более сложные варианты задания положения элементов на экране, но о них мы поговорим позднее.

Если вы напрямую прописали текст в атрибуте Text компонента TextView или Button, то всё будет работать, но Android ругнётся (выдаст ворнинг и даже предложит сам его исправить). Это происходит оттого, что в андройде так делать не принято. Тексты, цвета, какие-то другие константы — это всё ресурсы, которые должны храниться отдельно, в специальных файлах в папке values. Если значения этих ресурсов где-то вам нужны — вы просто ссылаетесь на них через специальную ссылку, вида @имя_ресурса.

Например, если зайти в файл colors.xml в папке values, то вы увидите, что в вашем приложении уже создано несколько ресурсов определящих значения различных цветов. Аналогично, текстовые ресурсы вам скорее всего предложат разместить в файле strings.xml. Вовсе не обязательно размещать текстовые ресурсы именно в strings.xml, вы можете создать в папке values какие-то новые файлы ресурсов, чтобы ещё более структурировать свои данные, но общая практика — размещать ресурсы отдельно.

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

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

Добавить комментарий