Компания Infoshell Android разработка, как сделать приложение на Андроид самостоятельно - Infoshell

Разработка мобильного приложения для Android с нуля

Разработка мобильного приложения для Android с нуля

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

Kotlin или Java: что выбрать новичку в Android разработке в 2026 году?

Сегодня Kotlin является основным языком разработки Android, a Java используется преимущественно для поддержки существующих проектов и библиотек.

В 2017 году Google объявил Kotlin официальным языком разработки Android, а позже закрепил статус Kotlin-first для всей платформы.

Большая часть современной документации и примеров кода на платформе Android Developers публикуется именно на Kotlin.

Основные преимущества Котлина перед Java

1. Код на Котлине компактнее, чем на Java. Лаконичность синтаксиса упрощает код, читабельность, что не только повышает качество кода но и облегчает поиск ошибок. Кроме того, компактность кода снижает затраты, ускоряет разработку, поддержку, производительность мобильного проекта.

2. Язык прост. Например, привычная для Джавы ошибка NullPointerException (появляется, когда код Java пытается использовать null вместо объекта) не возникает в Котлине.

3. С Котлином открыт доступ ко всем фреймворкам и библиотекам Java. Язык полностью совместим с уже написанным Java-кодом. Вы можете постепенно перенести мобильный продукт с Джавы на Котлин без необходимости начинать разработку с нуля.

Несмотря на доминирование Kotlin, базовое понимание Java все еще полезно при работе с существующими проектами и библиотеками.

Ресурсы для обучения Android разработке: от документации до курсов

Вы можете освоить Котлин и Андроид-разработку, используя бесплатные источники ниже:

  • Документация Android Developers — официальный сайт Google для Android-разработчиков. Здесь можно изучить SDK, АРІ платформы, архитектуру программ и современные практики разработки.
  • Сайт Kotlin — официальная документация языка Kotlin с описанием синтаксиса, основных возможностей, примерами кода.
  • Kotlin Playground — интерактивная среда, где можно писать и запускать Kotlin-код прямо в браузере.
  • Android Basics with Compose — бесплатный курс Google по разработке Android-проектов на Kotlin с использованием Jetpack Compose.
  • Android Codelabs — практические мини-уроки по разработке, архитектуре мобильного софта и работе с АРІ.

Инструменты разработки: Android Studio и SDK

Загрузите инструменты для разработки.

Создание проекта в Андроид Студио

Установите Android Studio. Это официальная среда, в которой ведется разработка проектов для android, с набором инструментов для написания кода, тестирования, отладки и публикации приложений.

Когда ведется разработка под android, также обязательно используется набор компонентов Android SDK. При установке Android Studio необходимые компоненты SDK устанавливаются автоматически через SDK Manager.

Интерфейс Android SDK Manager

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

Инструменты для разработки под Android

Debug Bridge для взаимодействия с устройством, установки приложений и отладки.

Android Asset Packaging Tool для обработки и сборки ресурсов приложения; инструменты сборки, которые преобразуют код приложения через формат DEX для выполнения в Android Runtime и другие.

Библиотеки

Интерфейс Android SDK Manager

AndroidX. Современный набор библиотек Jetpack, который обеспечивает совместимость с различными версиями Android и содержит большинство ключевых компонентов платформы.

Библиотеки Jetpack. Набор компонентов архитектуры, UI и инструментов разработки, построенных на базе AndroidX.

АРІ платформы. Позволяют программе работать с функциями устройства, например камерой, сетью, геолокацией, датчиками и системой уведомлений.

Android Emulator и системные образы. Позволяют запускать и тестировать код на виртуальных устройствах с различными версиями Android. Системные образы используются для создания виртуальных устройств Android c разными версиями системы и конфигурациями устройств.

После установки Android Studio и компонентов SDK можно создать первый проект.

Создаем проект: пошаговая настройка

Cоздание проекта на базе шаблона Empty_Compose_Activity

Чтобы началась полноценная разработка приложения для андроид на Kotlin и Jetpack Compose, создайте проект на базе шаблона Empty_Compose_Activity. Этот шаблон сразу настраивает проект под данный фреймворк и добавляет необходимые зависимости (Android Developers)

1) Создайте новый проект

  1. Откройте среду разработки.
  2. Выберите File > New > New Project (или New Project на стартовом экране среды разработки).
  3. Выберите Empty_Compose_Activity и нажмите Next.

2) Настройте параметры проекта

В окне Configure your project укажите:

Интерфейс окна Configure-Your-Project

  • Name: название проекта.
  • Package name: имя пакета в формате reverse-domain, например com.example.greetingcard.
  • Save location: папка на компьютере, где будет храниться проект.
  • Language: Kotlin (для нового UI это стандартный выбор).
  • Minimum SDK: проверьте актуальный минимум в документации, сейчас это значение не ниже АРІ 21, так как инструментарий поддерживает минимум АРІ 21.
  • Если не уверены с Minimum SDK, можно нажать Help me choose и посмотреть распределение устройств по версиям Android.

Нажмите Finish и дождитесь окончания процесса.

3) Что создаст Android Studio в Compose проекте

После создания проекта Android Studio уже подготовит основу под декларативную разработку:

  • создаст AndroidManifest.xml;
  • создаст MainActivity со стартовым Соmpose UI внутри setContent {...};
  • добавит build-файлы проекта и модуля, включая зависимости и настройки фреймворка (Android Developers).

4) Где смотреть файлы проекта

Откройте окно проекта: View > Tool Windows > Project. Выберите Android. Это удобное «логическое» представление структуры.

В папке app обычно важны следующие разделы:

  • manifests > AndroidManifest.xml. Файл описывает проект разработки для системы, включая стартовую Activity и разрешения.
  • kotlin+java > com.example... > MainActivity.kt. Главный входной экран приложения. В шаблоне Соmpose UI описывается прямо в Kotlin через setContent {...}, а не через ХML.
  • res. Ресурсы для разработки: строки, иконки, темы и прочее. В проекте с декларативным подходом папка layout может отсутствовать или быть пустой, потому что UI не обязателен для XML.
  • Gradle Scripts. Тут находятся файлы сборки. В 2026 часто используется Kotlin DSL, поэтому вы можете увидеть build.gradle.kts.
Файлы сборки Gradle Scripts в Android Studio

Важно различать уровни:

  • корневой build.gradle.kts на уровне проекта;
  • app/build.gradle.kts на уровне модуля приложения, где задаются зависимости, minSdk, targetSdk и настройки сборки.

Примечание: в проекте на Empty Compose Activity вы не обязаны видеть activity_main.xml c TextView «Hello, World!». Это характерно для старых шаблонов на View и XML, а современная разработка строит интерфейс с помощью Кotlin.

Запуск и отладка на устройстве

Проект создан, базовая разработка завершена, код написан. Теперь можно запустить программу и проверить ее работоспособность. Тестировать результат разработки на смартфоне можно двумя способами: через USB или через беспроводную отладку по Wi-Fi.

Подключение через USB

Подсоедините смартфон к компьютеру через USB-кабель и включите отладку. Для этого на этапе разработки выполните шаги:

Зайдите в «Настройки», затем «О телефоне» (на некоторых устройствах путь может проходить через раздел «Система»);

Внизу страницы найдите строку «Номер сборки» и коснитесь ее 7 раз;

После этого появится сообщение о том, что режим разработчика активирован;

Вернитесь на шаг назад, откройте «Параметры разработчика» и включите «USB debugging»;

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

Подключение через Wi-Fi (Wireless debugging)

Начиная с Android 11 можно запускать приложение без кабеля с помощью беспроводной отладки.

Откройте параметры разработчика и включите Wireless debugging.

Убедитесь, что смартфон и компьютер подключены к одной сети Wi‑Fi.

В Android Studio откройте список устройств для запуска приложения и выберите пункт Pair Devices Using Wi‑Fi.

Отсканируйте QR‑код или введите код сопряжения, который отображается на смартфоне.

После успешного сопряжения устройство появится в списке доступных устройств Android Studio.

Запуск приложения

В Android Studio выберите конфигурацию запуска в выпадающем списке Run/Debug.

Затем выберите подключенное устройство и нажмите Run.

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

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

Отправить заявку

Тестирование на эмуляторе: настройка AVD

Если у вас нет физического устройства, результаты разработки можно протестировать через Еmulator в Android Studio.

Тестирование на эмуляторе: настройка AVD

Откройте Device Manager, нажмите Create Device. Выберите модель устройства, например один из смартфонов Pixel. Затем выберите System Image. Это образ операционной системы Android, который будет установлен на виртуальное устройство. Android Studio предложит скачать доступные версии системы. Обычно выбирают одну из последних стабильных версий.

После создания виртуального устройства выберите его рядом с кнопкой Run, затем нажмите Run. Android Studio соберет проект, запустит эмулятор а после установит приложение на виртуальный смартфон.

Почему эмулятор может работать медленно

Android Emulator запускает полноценную систему, поэтому требует ресурсов компьютера.

На скорость работы влияют несколько факторов:

  • отключена аппаратная виртуализация процессора;
  • используется тяжелый образ системы;
  • недостаточно оперативной памяти.

Для более быстрой работы обычно используют System Image c архитектурой х86 или х86_64 и включенную аппаратную виртуализацию. Это значительно ускоряет запуск и работу эмулятора.

Публикация приложения в Google Play: ААВ и подпись приложения

После того как вы протестировали приложение на смартфоне или эмуляторе, следующий шаг разработки подготовить релизную сборку и опубликовать продукт в Google Play.

Обычно для публикации используется формат Android App Bundle (.aab).

Что такое ААВ

Лого Android App Bundle (AAB)

Android App Bundle (AAВ) — это формат публикации приложения. Он содержит весь код, ресурсы приложения, но не является готовым АРК, который устанавливается на устройство.

Когда вы загружаете ААВ в Google Play, магазин автоматически генерирует оптимизированные АРК для разных устройств. Например:

  • для разных архитектур процессора;
  • для разных плотностей экрана;
  • для разных языков.

Благодаря этому пользователи скачивают только те компоненты приложения, которые нужны именно их устройству.

Для новых приложений в Google Play использование ААВ является стандартным способом публикации.

Подпись приложения (App Signing)

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

Создание подписи приложения (App Signing)

Для подписи используется keystore — файл, который хранит криптографический ключ разработчика.

Этот ключ используется для:

  • подтверждения авторства приложения;
  • установки обновлений;
  • проверки подлинности приложения на устройстве пользователя.

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

Как создается релизная сборка

На финальном этапе разработки в Android Studio можно создать релизную сборку приложения следующим образом:

1. Откройте меню Build

2. Выберите Generate Signed Bundle / APK

3. Выберите вариант Android App Bundle

4. Укажите keystore или создайте новый

5. Введите пароль, параметры подписи

6. Нажмите Finish

После сборки Android Studio создаст файл .aab, который можно загрузить в Google Play Console.

Что происходит после загрузки ААВ

После загрузки файла в Google Play Console платформа автоматически:

  • создает оптимизированные АРК для разных устройств;
  • подписывает приложение через механизм Play App Signing;
  • распространяет приложение через Google Play.

Обычно разработчик загружает новую версию приложения в раздел Release → Production или сначала публикует ее для тестовых каналах, например Internal testing или Closed testing, чтобы проверить работу обновления перед публичным выпуском.

Почему важно хранить ключ подписи

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

Поэтому разработчики обычно:

  • хранят keystore в защищенном хранилище;
  • делают резервную копию;
  • ограничивают доступ к ключу внутри команды разработки.

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

Наша команда может помочь на этом этапе: поможем подготовить релизную сборку, пройти проверки Play Console и спокойно выпустить приложение.

Отправить заявку

Минимальные условия для разработки под Android и подготовка ПК

Перед началом разработки убедитесь, что на компьютере установлена Android Studio. Это официальная среда разработки приложений, которая включает редактор кода, инструменты сборки, эмулятор устройств, средства тестирования.

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

Окно установки Android Studio

Вы создадите первое Android-приложение на основе стандартного шаблона проекта Android Studio. Для разработки используется язык Kotlin в связке с современным UI-фреймворком Jetpack Compose, который применяется для создания интерфейсов. Стоит учитывать, что Android Studio peгулярно обновляется. Поэтому элементы интерфейса могут немного отличаться от изображений или описаний.

Что потребуется для начала работы

Для старта разработки по этому руководству понадобятся:

  • компьютер с установленной Android Studio;
  • базовые знания Kotlin;
  • установленный Android SDK;
  • эмулятор или физическое устройство для запуска приложения.

Чему вы научитесь

Вы узнаете:

  • как устроена разработка мобильных приложений для android на базовом уровне;
  • как создать проект в Android Studio;
  • как запускать приложение на эмуляторе или физическом устройстве;
  • как изменять текст, логику приложения с помощью Kotlin;
  • как вести разработку пользовательского интерфейса с использованием Jetpack Compose;
  • как использовать функцию Preview в Android Studio для предварительного просмотра интерфейса.

Какое приложение вы создадите

Мы создадим простое приложение, которое демонстрирует работу пользовательского интерфейса а еще позволяет изменить отображаемый текст. Такой проект обычно используется как первый шаг для знакомства с Android-разработкой и инструментами Android Studio.

Работа с современными шаблонами

Вы создадите приложение на Kotlin с интерфейсом на Jetpack Compose, используя шаблон проекта, который предоставляет Android Studio. В Android Studio интерфейс, названия элементов могут немного отличаться от версии, это нормально.

Чтобы создать проект, выполните шаги:

1. Запустите Android Studio.

2. На стартовом экране Welcome to Android Studio нажмите New Project (или Start a new Android Studio project). Если проект уже открыт, используйте File > New > New Project.

3. Откроется окно Select a Project Template со списком шаблонов.

Что такое шаблон проекта

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

4. Выберите шаблон Empty Activity. Он используется как базовый старт для Jetpack Compose.

5. Заполните поля:

  • Name: введите имя проекта, например GreetingCard.
  • Package name: оставьте значение по умолчанию или задайте свое. Например com.example.greetingcard.
  • Save location: оставьте по умолчанию или выберите удобную папку.

6. Minimum SDK: выберите значение не ниже API level 21. Jetpack Compose поддерживает минимальный уровень API 21, поэтому ниже ставить нельзя. Если вам нужна поддержка более старых устройств, этот декларативный UI-инструмент для этого не подходит. На практике чаще выбирают 21 или выше, а дальше ориентируются на требования проекта.

7. Нажмите Finish, а после дождитесь, пока Android Studio завершит настройку проекта.

После создания проекта

Android Studio может показать панель What’s New с описанием новых возможностей. Ее можно закрыть, она не влияет на работу.

Как смотреть код и предпросмотр интерфейса

Для предпросмотра процесса разработки используется Preview внутри редактора. Режимы Code, Split и Design могут находиться в другом месте интерфейса в зависимости от того, включен ли New UI.

Если Preview пустой или не обновляется, используйте кнопку Build and Refresh в окне Preview, чтобы пересобрать и обновить предпросмотр.

Стартовый экран Empty Activity для Compose обычно содержит простой пример UI, например текст вроде Hello world, который вы затем замените своим интерфейсом.

Структура проекта: где искать код и ресурсы

Мы продолжим изучение, где лежат основные файлы проекта, за что они отвечают. Это важно, потому что новичкам часто непонятно, чем отличается файл кода (например MainActivity) от файлов сборки (например build.gradle).

Откройте окно Project.

Android SDK Manager

Тут отображаются файлы, папки проекта. Приложение умеет показывать проект разными способами, поэтому сначала выберите нужный режим из выпадающего списка сверху окна Project.

Android (рекомендуется для новичков)

Это «логическое» представление. Android Studio rруппирует файлы так, чтобы было удобно писать код, но оно не полностью совпадает с тем, как папки лежат на диске.

Project или Project Files

Это «физическое» представление, ближе к тому, что вы увидите в Windows Explorer или Finder. Его удобно включать, когда нужно найти Gradle файлы, настройки сборки, служебные каталоги.

Если структура выглядит непривычно или «странно», убедитесь, что вы смотрите проект в режиме Android.

Карта проекта

Ниже ориентиры, которые помогают быстро понять структуру.

1) Код приложения

Ищите раздел app > kotlin + java (или app > java). Там лежат файлы Kotlin, например >MainActivity.kt.

Что такое MainActivity

MainActivity — это обычный Kotlin-класс. Он отвечает за стартовый экран приложения, логику UI. Современные шаблоны Android Studio часто используют Jetpack Compose, тогда MainActivity содержит вызов setContent { …}, который запускает интерфейс.

2) Интерфейс и ресурсы

Ищите app > res. Тут находятся ресурсы приложения: строки, изображения, иконки, темы. Если проект на Compose, папка layout может быть пустой или использоваться редко, потому что UI описывается кодом Kotlin.

3) Настройки сборки и зависимости

Ищите файлы Gradle. В 2026 в документации чаще встречается формат Kotlin DSL, поэтому файл может называться build.gradle.kts.

Главное правило

MainActivity.kt и другие файлы в app/src/... — это код приложения.

build.gradle(.kts) — это инструкции сборщику Gradle, как собирать приложение, какие библиотеки подключать и с какими настройками компиляции.

Где обычно лежит build.gradle(.kts)

  • app/build.gradle.kts — это настройки именно модуля приложения, зависимости, minSdk, targetSdk и прочее.
  • В корне проекта тоже может быть файл build.gradle(.kts) или settings.gradle(.kts) для настроек всего проекта.

4) AndroidManifest.xml

Ищите app > manifests. Это файл, который описывает разработку и само приложение для системы: главную Activity, разрешения, компоненты.

Первые изменения: меняем интерфейс

Теперь, когда вы познакомились с приложением, можно приступить к разработке поздравительной открытки в Jetpack Compose, то есть прямо в коде Kotlin, без XML-дизайнера. Современные шаблоны Android Studio интерфейс описывается функциями Kotlin внутри setContent {...}. (Android Developers)

Откройте файл MainActivity.kt в режиме Code. Вы посмотрите автоматически сгенерированный код, тут важны две вещи: onCreate() и setContent().

class MainActivity: ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            GreetingCardTheme {
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    Greeting("Android")
                }
            }
        }
    }
}

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

setContent() задает содержимое экрана через Jetpack Compose. Внутри setContent {...} можно вызывать только composable функции, то есть функции, помеченные аннотацией @Composable.

Дальше обратите внимание на функцию Greeting(). Это соmposable-функция, а еще описывает, что нужно показать на экране.

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(text = "Hello $name!", modifier = modifier)
}

Важно: текст меняется именно здесь, в Kotlin коде, а не в XML.

Чтобы добавить свое имя, измените строку функции Greeting():

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(text = "Hi, my name is $name!", modifier = modifier)
}

После изменения Android Studio обычно обновляет Preview автоматически. Если не обновилось, используйте кнопки Refresh в окне Preview.

Что нужно знать про функции

  • Composable функция помечается аннотацией @Composable.
  • Имена UI composables обычно пишут с заглавной буквы, по стилю Kotlin.
  • Большинство UI composables возвращают Unit, потому что они описывают интерфейс, а не вычисляют результат.

Предварительный просмотр без запуска приложения

@Preview позволяет увидеть composable без запуска на устройстве или эмуляторе. Для этого создайте preview функцию, передайте в Greeting() ваше имя.

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    GreetingCardTheme {
        Greeting(name = "Filipp")
    }
}

Параметр showBackground = true добавляет фон, чтобы элементы было легче различать.

Оформление: работа с цветом и темами

Изменение цвета фона в Jetpack Compose

Сейчас у вас уже есть текст приветствия, но интерфейс можно сделать выразительнее. В данном фреймворке внешний вид элементов настраивается прямо в коде Kotlin. Цвет фона можно изменить с помощью контейнера Surface или через Modifier. В современных проектах на базе новой архитектуры интерфейс описывается программно, поэтому старые методы через XML-атрибуты здесь не используются.

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

Обновите функцию Greeting() и поместите текст внутрь Surface:

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Surface(
        color = Color.Cyan,
        modifier = modifier
    ) {
        Text(
            text = "Hi, my name is $name!"
        )
    }
}

Теперь фон контейнера Surface будет окрашен в выбранный цвет.

Добавление цвета

Если Android Studio подсвечивает Color как неизвестный символ, необходимо добавить импорт. В верхней части файла добавьте:

import androidx.compose.ui.graphics.Color

Обычно среда может добавить этот импорт автоматически. Для этого можно нажать Alt+Enter (Windows) или Option+Enter (Мас) и выбрать вариант добавления импорта.

Как выбрать цвет

После ввода Color Android Studio предложит список доступных цветов. Например:

  • Color.Red
  • Color.Blue
  • Color.Cyan
  • Color.Green

Можно выбрать любой из них или создать собственный цвет.

Альтернативный способ через Modifier

При разработке фон можно задавать не только через Surface, но и через Modifier. Это часто используется для простых элементов интерфейса.

Пример:

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(
        text = "Hi, my name is $name!",
        modifier = modifier.background(Color.Cyan)
    )
}

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

Предварительный просмотр

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

В Compose именно такой цикл разработки считается стандартным: вы меняете код Kotlin, а интерфейс обновляется прямо в редакторе.

Верстка в Android разработке: отступы и позиционирование

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

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

Один из самых часто используемых модификаторов — padding. Он добавляет пространство вокруг элемента.

Обновите функцию Greeting() и добавьте отступ:

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Surface(color = Color.Cyan) {
        Text(
            text = "Hi, my name is $name!",
            modifier = modifier.padding(24.dp)
        )
    }
}
Пример padding(24.dp) с добавлением отступа вокруг текста со всех сторон

Для этого примера padding(24.dp) добавляет отступ вокруг текста со всех сторон.

Что такое dp

Compose размер отступов, элементов обычно задается в dp (density-independent pixels). Это единица измерения интерфейса, которая помогает сохранять одинаковые визуальные размеры на устройствах с разной плотностью экрана.

Почему Modifier передается в параметрах функции

Для composable-функций принято передавать параметр modifier:

modifier: Modifier = Modifier

Это стандартный паттерн для декларативной верстки. Он позволяет вызывающему коду изменять внешний вид компонента без изменения его внутренней логики. Например, родительский элемент может добавить дополнительный padding, размер или обработчик клика.

Импорт необходимых модификаторов

Чтобы использовать padding и dp, убедитесь, что есть соответствующие импорты:

import androidx.compose.foundation.layout.padding
import androidx.compose.ui.unit.dp

Обычно они добавляются автоматически.

Работа с импортами

Чтобы удалить неиспользуемые импорты и упорядочить список, можно использовать функцию Optimize Imports.

  • Windows / Linux: Ctrl + Alt + O
  • macOS: Control + Option + O

Также эту функцию можно вызвать через меню Code → Optimize Imports.

Экспериментируйте с интерфейсом

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

Готовый результат

Фрагмент кода для просмотра

package com.example.greetingcard
	
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.ui.graphics.Color
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.example.greetingcard.ui.theme.GreetingCardTheme

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            GreetingCardTheme {
                // A surface container using the 'background' color from the theme
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    Greeting("Android")
                }
            }
        }
    }
}

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Surface(color = Color.Cyan) {
        Text(text = "Hi, my name is $name!", modifier = modifier.padding(24.dp))
    }
}

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    GreetingCardTheme {
        Greeting("Meghan")
    }
}

В реальных коммерческих проектах, где требуется разработка мобильного приложения на андроид, добавляются сложная архитектура, работа с API, аналитика, тестирование и CI. Наша команда Infoshell превращает такие прототипы в полноценные приложения: от MVP до релиза.

Итоги и дорожная карта Android разработки на 2026 год

Разработка вашего первого Android-приложения завершена. В этом уроке вы познакомились с Android Studio, структурой проекта и создали простой интерфейс с помощью Jetpack Compose.

Вы увидели базовый цикл разработки: создание проекта, написание composable функций, изменение интерфейса в коде Kotlin и просмотр результата через Preview.

Краткое резюме

Чтобы начать разработку приложения:

  • откройте Android Studio;
  • выберите New Project > Empty Activity;
  • задайте имя проекта, параметры SDK.

Основной код интерфейса находится тут: MainActivity.kt.

Для Jetpack Compose интерфейс строится из Composable функций. Они помечаются аннотацией @Composable, а также описывают элементы интерфейса.

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

Что изучать дальше

После базового интерфейса следующий шаг — освоить ключевые инструменты Android разработки:

Архитектура приложений

Изучите архитектуру MVVM, а также работу с ViewModel.

Работа с сетью

Для сетевых запросов часто используется библиотека Retrofit.

Локальное хранение данных

Для хранения данных на устройстве применяется библиотека Room.

Навигация между экранами

Для переходов между экранами используется Navigation Compose.

Освоив эти инструменты, вы сможете вести разработку полноценных приложений с современной архитектурой и работой с данными.


Если вас интересует разработка мобильного приложения под iOS — прочтите эти статьи: