Android — самая популярная мобильная операционная система в мире по данным аналитической компании StatCounter, она установлена более чем на 70% существующих смартфонов. С 2005 года операционкой владеет Google и регулярно выпускает обновления, чтобы сделать возможными всё новые функции в написанных для андроида приложениях.
Сканировать документы, проводить химические опыты, анализировать сети wi-fi, настраивать музыкальные инструменты, рассчитывать количество калорий в еде по фото, контролировать сервера и удалённые устройства — всё это можно делать, просто загрузив на телефон соответствующие программы из магазина Google Play.
В этой статье мы покажем, как сделать приложение для андроида даже без навыков программирования и специального профильного образования. В конце бонус — мини-инструкция по сборке приложения, которую вы сможете применить прямо сегодня.
Программы и инструменты разработки android-приложений
Чтобы создать серьёзную банковскую программу или мобильный сервис заказа такси, нужны знания языков программирования и средства разработки. Для создания же простого мобильного приложения достаточно только средств разработки и желания разрабатывать.
Всё, что нужно — научиться пользоваться стандартными шаблонами, встроенными в программное обеспечение. Разберём подробно, какие конкретно инструменты и программы нам для этого понадобятся.
Среда разработки — это программа, в которой создаются приложения. Ближайшая аналогия — верфь, на которой строят, чинят и модернизируют корабли. Самые востребованные среды разработки для мобильных — Eclipse, IntelliJ IDEA и основанная на ней Android Studio (AS). Последнюю в 2005 году купил Google и она стала официальной средой разработки для андроида. Поэтому мы выбрали Android Studio в качестве основной и дальше в статье будем говорить именно о ней.
Java development kit — это набор инструментов, которые здорово упрощают процесс создания приложения и значительно расширяют возможности среды разработки. Простые проекты можно создавать и без него.
В набор Java development kit входят:
- библиотеки шаблонов — из них собирают блоки приложений;
- интерпретатор — переводит код в понятные машине сигналы;
- отладчик — устраняет ошибки в коде;
- инструкции и руководства пользователя — помогают разобраться в технологических деталях;
- утилиты — небольшие вспомогательные программы.
Тестовое устройство — это может быть телефон или любой гаджет на андроиде: планшет, часы, телевизор, пылесос или даже холодильник. Если ничего подобного под рукой нет и техника в доме не «умная», ничего страшного: в AS есть встроенный эмулятор, который позволит протестировать созданный проект прямо в программе. Также можно воспользоваться другими бесплатными эмуляторами для запуска андроид-приложений: Bluestacks 3, Andy, Genymotion и др.
Программное обеспечение для мобильной разработки бесплатное, свободно распространяется и доступно на официальных сайтах. Это значит, что при обучении никаких дополнительных затрат у вас не возникнет.
Мы разобрали основные средства разработки. Теперь посмотрим, что «под капотом» у любого андроид-приложения.
Компоненты android-приложений
Любое мобильное приложение, как бутерброд, состоит из нескольких слоёв. Как и в настоящем сэндвиче — слои-компоненты имеют разный состав и не перемешиваются между собой.
Такая архитектура необходима, чтобы система Андроид чётко понимала, к какому файлу в структуре приложения обращаться, в зависимости от произошедшего в её поле события. Разрядился телефон во время игры — система понимает «ага, это к приёмникам», решили мы послушать аудиокнигу в метро — это уже у службам.
Выделяют четыре основных элемента мобильных андроид-приложений:
- Активности, activity — всё то, на что нажимает и с чем непосредственно взаимодействует пользователь: слайдеры, кнопки, всевозможные окошечки с уведомлениями и любые доступные интерфейсы.
- Широковещательные приёмники, broadcast receivers — это реакции на системные события: потерю связи, восстановление сети, разрядку батареи, уведомления об обновлении системы и др.
- Службы, service — компоненты, которые работают фоном, вне поля зрения пользователя. Они выполняют задачи, которые длятся дольше, чем клик по кнопке или свайп, чтобы пролистнуть ленту. Сюда относятся воспроизведение видео и музыки или запуск одного приложения через интерфейс другого.
- Адаптеры синхронизации, sync adapters — синхронизируют данные аппарата с различными облачными сервисами. Сюда относится синхронизация контактов и календаря с хранилищем учётной записи.
Система Android обращается к разным компонентам приложения в зависимости от события
Мы разобрались в программах и инструментах разработчика и компонентах любого мобильного приложения на андроид. А теперь давайте узнаем, как сделать своё приложение на телефон андроид, используя только их. Соберём вместе простой проект, который будет приветствовать пользователей при запуске.
Как создать простое приложение на Android
Чтобы протестировать новую программу, разработчики пишут в интерфейсе приветственное сообщение «Hello world». Мы тоже напишем приветственное сообщение в нашем мобильном приложении — для Checkroi.
Скачайте и установите с официального сайта среду разработки Android Studio. Процесс установки этой программы прост и стандартен, поэтому опустим подробности и перейдём к разработке.
Шаг 1. Создаём новый проект
Запускаем Android Studio и выбираем создание нового проекта.
Кнопка New Project отвечает за создание проекта
Шаг 2. Выбираем шаблон
Здесь у нас есть возможность выбрать шаблон интерфейса. Это то, как программа будет смотреться на экране смартфона при запуске. Для нашего простого проекта подойдёт шаблон Empty Activity.
Находим в списке и выбираем Empty Activity
Шаг 3. Задаём базовые параметры
На этом этапе нужно выбрать ряд характеристик проекта:
- Name — имя приложения.
- Package name — имя папки, в которой будет храниться код. На это же имя будет ссылаться Play Market, если мы решим опубликовать наш проект.
- Save location — путь к локальной папке на компьютере, в которой будут лежать файлы приложения.
- Language — язык, на котором мы напишем приложение. Между Kotlin и Java пока выбираем последний.
- Minimum SDK — минимальная версия андроида, которую будет поддерживать приложение. В мире очень много старых устройств, поэтому чем старше версия ОС, тем больше пользователей смогут установить программу. В то же время со «свежестью» версии увеличивается функциональность. Поэтому выбор версии зависит от целевой аудитории: подумайте, какие девайсы используют люди, для которых вы ведете разработку.
Выбор начальных параметров проекта
После нажатия кнопки «Finish» начнётся сборка проекта, она займёт несколько минут. В это время ничего делать не нужно, надо просто подождать.
Шаг 4. Создаём приветствие
Проект загрузился. Теперь мы можем рассмотреть его подробнее. Проекты в AS состоят из трёх основных каталогов. Грубо говоря, это папки, в которых хранятся данные разных типов. Теперь подробнее о каждом из каталогов и об их содержимом:
- Manifests — в файле манифеста заключена важная информация о приложении: уникальный идентификатор проекта, количество экранов приложения, права доступа и разрешения, список библиотек компонентов и многое другое. Манифест — первое, что считывает система Android при запуске программы.
Манифест
- Java — здесь программисты пишут код, когда разрабатывают мобильные приложения. Мы сегодня создаём проект без необходимости знаний программирования, поэтому здесь ничего писать не будем.
Файлы с кодом в элементе Java
- Res — каталог с остальными необходимыми файлами для приложения. Он содержит некодовые ресурсы: изображения, цвета, параметры меню, шаблоны экранов загрузки и другие различные типы констант. Именно здесь по умолчанию хранится файл xml, в котором содержится информация об интерфейсе приложения. В перекрестье синих линий мы видим «Hello, world!» и, так как мы создаём приветственное сообщение для Checkroi, изменим надпись на «Hello Checkroi!».
Папки с ресурсами в каталоге res и изменение файла activity_main.xml
Шаг 5. Тестируем приложение
Запускаем встроенную в AS функцию эмуляции, которая создаст на нашем компьютере виртуальную версию системы Android.
Выбираем модель телефона для теста и запускаем эмуляцию
Эмулятор создаёт идеальную копию настоящего смартфона выбранной модели и полностью воспроизводит его характеристики. Полностью — это значит, что если у вас слабый компьютер с 2–4 ГБ оперативной памяти, а вы выбрали новый смартфон с 8 ГБ оперативки, эмулятор не запустится и вам нужно будет выбрать модель постарше.
Эмулятор полностью воссоздаёт интерфейс и процессы android-смартфона
Всё работает. Мы только что самостоятельно создали мобильное приложение на андроид, не написав ни строчки кода. Теперь, если кто-то скачает его и запустит, он увидит приветственное сообщение для Checkroi!
Надеемся, мы развеяли ваши сомнения и воодушевили на погружение в мир мобильной разработки. Чтобы постепенно перейти от простых проектов к масштабным сложным проектам, почитайте, какие языки программирования для этого понадобятся.
Языки программирования android-приложений
Более 10 лет официальным языком для разработки приложений на андроид считается язык программирования Java, а с 2017 к нему присоединился Kotlin и теперь они делят популярность. Полезно знать оба языка — так вы сможете не только создавать новые приложения, но и поддерживать и апгрейдить старые. Также мобильным разработчикам, владеющим несколькими языками, открываются более широкие возможности — можно выбирать из большего количества проектов без привязки к конкретному языку.
Обучение мобильной разработке с нуля стоит начинать с языка Java. Он сложнее для понимания, но после него будет легко перейти на Kotlin, который вырос из Java и работает на классах и библиотеках своего мощного родителя. Если всё же сомневаетесь, какой язык выбрать, почитайте подробную статью, в которой мы сравниваем эти языки и помогаем сделать оптимальный выбор под ваши задачи.
Java входит в тройку лидеров среди языков программирования, на нём пишут код 38% разработчиков в мире. Kotlin используют лишь 4% разработчиков. Но Kotlin молодой язык и даже такая небольшая доля в рейтинге для него — хороший показатель прогресса. Это как создать местную футбольную команду и с локальных побед дорасти за несколько лет до Лиги Чемпионов.
Популярность языков программирования на 2021 год. Источник: Hired
Непопулярность языка на руку kotlin-программистам — среди них низкий уровень конкуренции. При этом вслед за ростом числа проектов на Kotlin растёт количество вакансий. Так, по данным Head Hunter на начало 2020 года kotlin-программиста искали не более 100 компаний, а на момент выхода этой статьи в октябре 2021 на портале hh.ru уже более 2700 предложений на ту же должность.
Подведём итог
Мы узнали, как сделать мобильное приложение для андроид самому и на практике убедились, что это под силу каждому. Индустрия мобильных устройств развивается, а параллельно с ней — сфера мобильной разработки. С каждым годом увеличивается количество библиотек с готовыми решениями и шаблонами и появляются новые удобные инструменты. Профессиональное комьюнити развито и всегда готово помочь начинающим, а подавляющая часть софта распространяется бесплатно.
Создавать мобильные приложения для андроида — достижимая цель. Вы можете постепенно и в комфортном темпе углубляться в андроид-разработку. Освойте программирование хотя бы базово, а чтобы не терять время на самостоятельный поиск информации, загляните в подборку лучших онлайн-курсов по Kotlin. Выбрав один из вариантов обучения, вы будете готовы загрузить полноценное мобильное приложение в Google Play уже через несколько месяцев с начала занятий