Приложения для android руководство

#Руководства

  • 18 июл 2018

  • 1

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

 vlada_maestro / shutterstock

Анатолий Ализар

Пишет про разработку в Skillbox Media. Работал главным редактором сайта «Хабрахабр», ведёт корпоративные блоги.

Язык программирования для мобильной разработки на Android очень простой — это Java. Сейчас Google активно продвигает Kotlin как язык, который сможет заменить Java. Приложения пишут и на C++.

Создание простейшего приложения состоит из нескольких этапов:

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

Первым делом установите программу Android Studio. Это официальная среда разработки (IDE) для Android, она работает на Windows, macOS и Linux. Хотя при разработке программ для Android можно использовать и другие среды, кроме Android Studio.

Если на компьютере не установлены Android SDK и другие компоненты, то Android Studio автоматически скачает их. Android SDK — это среда программирования, в которую входят библиотеки, исполняемые файлы, скрипты, документация и т.д.

Android SDK компилирует код вместе с любыми данными и ресурсами в файл с расширением .apk. Он содержит всё необходимое для установки приложения на Android-устройство.

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

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

Android-приложение состоит из четырёх компонентов. Каждый компонент — это точка входа, через которую система или пользователь может получить доступ.

  • Активность (activity) — элементы интерактивного пользовательского интерфейса.
    Одна активность задействует другую и передаёт информацию о том, что намерен делать пользователь, через класс Intent (намерения). Активности подобны веб-страницам, а намерения — ссылкам между ними. Запуск приложения — это активность Main.
  • Сервис (service) — универсальная точка входа для поддержания работы приложения в фоновом режиме.
    Этот компонент выполняет длительные операции или работу для удалённых процессов без визуального интерфейса.
  • Широковещательный приемник (broadcast receiver) транслирует нескольким участникам намерения из приложения.
  • Поставщик содержимого (content provider) управляет общим набором данных приложения из файловой системы, базы данных SQLite, интернета или другого хранилища.

Теперь попробуем сделать своё приложение для Android.

Выбираем название приложения, домен компании, путь к проекту и название пакета. Указываем, включить ли поддержку опциональных языков программирования C++ и Kotlin.

Задаём одну или несколько целевых платформ для сборки. Для этого используется SDK и AVD, менеджер виртуальных устройств Android. Инструмент позволяет устанавливать в SDK пакеты, которые поддерживают несколько версий ОС Android и несколько уровней API (интерфейсов программирования приложений).


Справка

Чем ниже версия Android, тем больше устройств, на которых приложение запустится. Чем выше версия, тем богаче функциональность API.


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

После нескольких минут сборки Android Studio открывает интерфейс IDE. Здесь три основных момента.

Если выбрать в выпадающем меню вид Android, то вы увидите файлы проекта. Например, наша основная активность называется app > java > ru.skillbox.skillboxapp > FullscreenActivity. При создании проекта мы указали вместо активности Main полноэкранную активность.

Далее можно посмотреть файл app > res > layout > activity_fullscreen.xml. Это XML-файл с макетом для UI нашей основной активности.

Наконец, третий важный файл app > manifests > AndroidManifest.xml описывает фундаментальные характеристики приложения и определяет все его компоненты.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ru.skillbox.skillboxapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".FullscreenActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:label="@string/app_name"
            android:theme="@style/FullscreenTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Созданное нами приложение — это одна активность, которая запускается в полноэкранном режиме и не имеет графических элементов.

Запускаем на Android-устройстве или в эмуляторе.

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

Для запуска в эмуляторе нажимаем в Android Studio кнопку Run в меню Run (Shift+F10). Выбираем подходящее устройство и версию ОС, портретную или ландшафтную (альбомную) ориентацию.

Android Studio установит эмулятор и запустит его.

Пользовательский интерфейс Android-приложения создаётся через иерархию макетов (layouts, объекты ViewGroup) и виджетов (объекты View). Макеты управляют расположением дочерних виджетов на экране. Сами виджеты — это непосредственно компоненты UI: кнопки, текстовые поля на экране и т.п.

Интерфейс активностей создаётся в Android Studio в редакторе макетов (Layout Editor) и хранится по большей части в XML-файлах.

  • Открываем файл app > res > layout > activity_fullscreen.xml.
  • Добавляем на экран из палитры (Palette) виджеты перетаскиванием мышью.
  • Например, берём текстовое поле (PlainText). Это виджет EditText, куда пользователь может вводить текст.
  • Добавляем кнопки и другие нужные элементы.

Также на экран можно перетащить кнопки и другие элементы.

Предположим, мы создали активность с текстовым полем и кнопкой «Отправить». После этого нужно написать, что конкретно будет происходить при нажатии кнопки «Отправить».

  • Заходим в код app > java > FullscreenActivity.
  • Добавляем метод SendMessage() в класс FullscreenActivity, чтобы при нажатии на кнопку вызывался этот метод.
  • Создаём намерения (класс Intent) для перехода от одной активности к другой, новые активности, навигацию и всё остальное, что необходимо для приложения.

И, конечно, начинаем мечтать, как монетизировать приложение.

Научитесь: Профессия Мобильный разработчик
Узнать больше

1. Требования к аппаратуре и программному обеспечению

Для устройств на базе ОС Android:

  • Android — версия 2.3 и старше;
  • оперативная память — не менее 256 Мб для работы приложения;
  • на базе процессоров Intel x86 и ARM с архитектурой ARMv5TE и выше;
  • сенсорный экран.

2. Установка, обновление, удаление мобильного приложения

Установка мобильного приложения выполняется из магазина приложений Google Play (https://play.google.com/store).

Обновление мобильного приложения выполняется средствами магазина приложений.

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

3. Запуск мобильного приложения

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

4. Работа со списком приложений

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

Для того чтобы изменить порядок приложений в списке, следует:

  • нажать кнопку Упорядочить — в правой части каждой строки отобразится кнопка перетаскивания.
  • нажать кнопку в строке приложения, которое нужно переместить и перетащить ее на требуемое место.

4.1. Создание приложения

Для того чтобы создать приложение для мобильной платформы, следует:

  1. Выбрать команду добавления приложения.
  2. Указать имя приложения и нажать кнопку Готово.
  3. После закрытия окна будет создано приложение.

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

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

4.3. Изменение свойств приложения

Свойства приложения изменяются в специальном окне. Для открытия окна свойств приложения следует выполнить длинное нажатие на нужном приложении. В открывшемся контекстном меню выбрать команду Изменить.

В открывшемся окне можно изменить наименование приложения, запустить его (кнопка Открыть) или удалить (кнопка Удалить).

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

4.4. Удаление приложения

Для удаления приложения следует выбрать команду Удалить и подтвердить свое действие: выполнить длинное нажатие на удаляемом приложении. В открывшемся контекстном меню выбрать команду Удалить.

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

4.5. Обновление приложения

Мобильное приложение обновляется с помощью используемого магазина приложений. После его успешного обновления мобильного приложения необходимо обновить ранее созданные приложения. Для этого достаточно запустить приложение.

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

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

5. Интерфейс системы

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

6. Работа с формами

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

  • если прокрутка началась внутри элемента и ему есть куда прокручиваться в момент начала действия, то прокрутка будет осуществляться для элемента;
  • в противном случае прокручиваться будет вся форма.

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

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

Команды открытия вспомогательных форм реализованы с помощью специального меню, которое открывается с помощью нажатия на заголовок окна, если заголовок выделен подчеркиванием.

В форме могут располагаться табличные документы и диаграммы. В этих объектах может быть доступна функция расшифровки. Расшифровка — это действие, связанное со значением в ячейке табличного документа или элемент диаграммы. Это может быть открытие другой формы, построение другого отчета или перестроение текущего и т. д. Для выполнения расшифровки нужно нажать на интересующую ячейку или элемент диаграммы. Если расшифровка не поддерживается, ничего не произойдет.

7. Ввод текста

Для ввода различной информации предназначена экранная клавиатура. Для ее активации, как правило, достаточно нажать на поле ввода, куда требуется ввести информацию. Кнопка Готово (ДалееВвод и т. д.) приводит к переходу между полями ввода без закрытия клавиатуры.

8. Работа с файлами мультимедиа

В мобильном приложении может быть предусмотрена работа с мультимедийными возможностями устройства: создание аудиозаписи, использование встроенной камеры (для фото- и видеосъемки).

Запись аудио. Нажать кнопку диктофона в центре нижней части экрана. Чтобы остановить запись, повторно нажать кнопку диктофона. Чтобы отменить запись, нажать клавишу Назад.

Сохраненная аудиозапись будет обработана мобильным приложением.

Запись видео. Нажать кнопку записи видео в центре нижней части экрана. Чтобы остановить запись, повторно нажать кнопку записи. Чтобы отменить запись, нажать клавишу Назад.

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

Съемка фотографии. Нажать кнопку фотокамеры. Для отмены съемки нажать клавишу Назад.

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

9. Местоположение на карте

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

Установка Google Maps в виде отдельного приложения не требуется.

10. Сообщения пользователю

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

11. Резервное копирование

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

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

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

На устройствах под управлением iOS при создании приложения папка с данными приложения помечается как нерезервируемая. После того как изменяются данные приложения (в процессе работы с приложением), папка с данными приложения помечается как резервируемая и начинается ее резервное копирование с помощью системных средств.

Разработка мобильных приложений — перспективное направление. По данным Statcounter, за 2021 год доля Android среди операционных систем в мире — 39,49%, а iOS — 17,42%.

Растет и спрос на Android-разработчиков. На «Хабре» в январе 2022 года — около 2500 вакансий. Во многих указана обязанность — работа в Android Studio. Как работать в этой среде разработки — в нашей инструкции.

Каким компаниям нужно свое мобильное приложение

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

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

С чего начать разработку приложения

✔️ Определите задачи. Распишите проблемы и решения для целевой аудитории. Например, клиентам в вашей сфере удобнее заказывать товары не дома у компьютера, а в пробке или во время обеда с мобильного телефона. Задача — привлечь таких людей.

✔️ Проанализируйте конкурентов. Протестируйте самые популярные продукты. Отметьте, каких опций не хватает, что можно улучшить, о чём пишут в отзывах.

✔️ Сформируйте функции. Напишите, какие опции будут полезны. Например, для приложения сетевой пекарни подойдут:

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

Из функций соберите основной сценарий — путь клиента от установки до использования каждой опции. В примере с пекарней это:

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

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

Интерфейс Figma

Интерфейс Figma

Чтобы улучшить сценарий приложения:

Дайте инструкцию. Объясните новым клиентам, куда они попали и как пользоваться приложением.

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

Используйте меньше рекламы и уведомлений. Результаты опроса Criteo в 2020 году: 21% пользователей удаляет приложение из-за навязчивой рекламы, 9% — из-за пуш-уведомлений.

✔️ Продумайте дизайн. Следуйте принципам минимализма и логике пользователей. Человек должен понять суть приложения сразу после его установки. Пусть этому не мешают иконки, детали, кнопки. Чем проще и понятнее интерфейс, тем больше шансов на коммерческий успех.

Чтобы подобрать гармоничные цвета, используйте сервис Adobe Color. Там же смотрите тенденции и примеры. Макеты и баннеры создавайте в Figma и Adobe XD, если вы делаете приложение вручную.

Поиск в Adobe Color

Поиск по цветам, настроениям и ключевым словам в Adobe Color

📌 Конструкторы no-code. Это сервисы с готовым набором функций и дизайнерскими шаблонами. Есть платные и бесплатные конструкторы. Когда будете выбирать, учитывайте, можно ли публиковать приложение в Google Play и других магазинах.

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

Недостаток: в бесплатных тарифах — минимум функций. Не подходит для крупных проектов, например интернет-магазинов с большим каталогом.

Четыре многофункциональных сервиса no-code:

1️⃣ Mobincube

Бесплатный конструктор с дополнительными платными функциями. В бесплатной версии соберете неограниченное количество интерактивных и информативных приложений и подключите аналитику. Но не сможете монетизировать проект. Для этого есть платные тарифы, которые начинаются от 2,99 € в месяц. Или годовые подписки — от 35,88 €.

2️⃣ Appy Pie

Платный конструктор с семидневной пробной версией. Она доступна после регистрации. В пробной версии можно разработать многофункциональное приложение с неограниченным редактированием, использовать «Google Аналитику», удалять рекламу Appy Pie, пользоваться круглосуточной поддержкой. Подходит, чтобы создать сложные приложения с большим количеством функций. Стоимость платной версии — от 999 ₽ до 2999 ₽ в месяц.

3️⃣ Kalipso Studio

Конструктор с бесплатной пробной версией. Подходит, чтобы создать многофункциональные онлайн- и офлайн-приложения. Дает доступ к базам данных компании, распознаёт речь, считывает штрихкод. Цену на платную версию сообщает отдел продаж: она зависит от проекта.

4️⃣ Bravo Studio

Сервис превращает готовые макеты из Figma и Adobe XD в нативные приложения. На бесплатном тарифе можно загружать макеты три раза в неделю, но на всех продуктах будет логотип конструктора. Платная версия без ограничений и логотипа стоит 49 € в месяц.

📌 Языки программирования. Нужно знать Java или Kotlin. У этих языков схожие принципы, они популярны у программистов и востребованы у работодателей.

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

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

Онлайн-университет Skypro помогает научиться программировать на Java с нуля. Преподаватели — практикующие разработчики, у которых есть опыт найма и наставничества. В программе пять этапов на 11 месяцев: от введения до защиты дипломного проекта. Например, на первом вы погрузитесь в основы языка, освоите базовые функции и напишете свой первый код. На втором — научитесь пользоваться библиотеками, создавать дженерик-классы, работать со стримами. Будете тестировать код. Все материалы останутся у вас после обучения.

Как создать мобильное приложение в Android Studio

Установите инструменты. Вам понадобится среда разработки Android Studio. Она бесплатная и работает на разных операционных системах. Если на компьютере процессор AMD, установите эмулятор Genymotion.

Разработайте приложение. На первом экране нажмите New project и выберите шаблон проекта.

Как создать мобильное приложение в Android Studio

Затем заполните данные о проекте и выберите язык программирования. Заполните все поля и кликните Finish. После этого появится окно для работы с кодом.

Как выбрать язык программирования в Android Studio

Далее создайте эмулятор — виртуальный аналог будущего приложения. Для этого нажмите на значок смартфона AVD справа на панели инструментов. В следующем окне задайте устройство и выберите его параметры. Нажмите Next.

Как создать эмулятор в Android Studio

Загрузите версию Android, для которой разрабатываете проект, ⟶ Finish ⟶ Next.

Как выбрать версию андроида в Android Studio

В следующем окне выберите версию эмулятора, нажмите Finish и запустите его. Он откроется в отдельном окне.

Версия эмулятора в Android Studio

После запуска эмулятора пишите код.

В левой части экрана вы увидите три папки. В java — код приложения. Здесь создают и заполняют экраны. В разделе res хранятся макеты и все дизайнерские компоненты. В этой папке разработчик верстает проект. Manifest содержит данные о каждом экране.

Код от эмулятора

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

Проверьте:

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

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

Чтобы собрать ключ, зайдите в Build на панели управления и откройте Generate Signed Bundle or APK:

Generate Signed Bundle or APK

Выберите тип сертификата, нажмите «Далее» и заполните форму:

Тип сертификата в Android Studio

Затем сделайте пиктограмму и скриншоты экранов для разных устройств. Проверьте права и финальную версию.

Запустите релиз. Это лучше сделать в Google Play — самой популярной площадке для приложений. У магазина огромная база пользователей, удобные инструменты для загрузки, быстрая проверка. Единоразовый платеж при регистрации — $25.

Создайте новый аккаунт Google и зарегистрируйтесь на странице консоли. Личный аккаунт не используйте, потому что робот Google Play может заблокировать разработчика. Тогда вы потеряете доступ. Затем нажмите кнопку «Новое приложение» и заполните все формы.

Альтернативы Google Play:

  • Amazon Appstore. Удобен, чтобы интегрироваться с онлайн-магазином Amazon. Так как приложений в несколько раз меньше, чем в Google Play, больше шансов на то, что ваше приложение скачают.
  • Samsung Galaxy Store. Команда магазина приложений сама проведет тесты на устройствах Samsung и укажет на ошибки. Так вы сэкономите на проверках.
  • Aptoide. Он бесплатный, поэтому охваты очень большие. В нем есть программы, которых не найти в Google Play, потому что правила размещения не такие жесткие.

Как заработать на приложении

Есть четыре варианта:

1️⃣ Внедрить платные функции. Например, если у вас программа по обработке видео, сделайте возможным добавлять музыку только за деньги.

2️⃣ Продавать подписки на определенный период. Например, месяц бесплатного тестирования, далее тарифы по месяцам или на год со скидкой.

3️⃣ Собирать взносы. Приложение будет бесплатно, но пользователям выскочит форма для добровольных пожертвований.

4️⃣ Размещать рекламу. Это могут быть баннеры в определенной части или на всю область экрана при запуске.

Как выбрать наиболее подходящий вариант:

  • Изучите аналогичные разработки и проанализируйте, как создатели зарабатывают на них.
  • Подумайте, как будет действовать целевая аудитория. Например, если пользователи используют такие приложения каждый день, подойдет способ с рекламой.
  • Оцените, возможно ли дополнить приложение. Если да — добавляйте новые платные инструменты.
  • Учитывайте характеристики целевой аудитории. Одни охотно доплатят за отсутствие рекламы, другим удобнее покупать конкретные функции.
  • Формируйте цены с учетом проживания пользователей и стоимости продуктов конкурентов.

Что нужно знать о создании приложений

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

📱 Выберите способы монетизации и заложите в план расходы на продвижение.

📱 Создайте приложение самостоятельно или в конструкторе no-code. Последний вариант проще, он подойдет для простых приложений, но часть функций платная.

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

📱 Самый популярный магазин приложений для Android — Google Play. Альтернативы с меньшей конкуренцией: Amazon Appstore, Samsung Galaxy Store, Aptoide.

На каком языке в какой среде разработки писать, как выложить в Google Play и зарабатывать

https://gbcdn.mrgcdn.ru/uploads/post/2134/og_image/912aecd851b468f3531cf6927743dbca.jpg

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

Уже несколько лет на рынке разработки приложений под Андроид спрос превышает предложение, и такое состояние рынка сохранится в ближайшие годы. Если говорить о специфике разработки, то речь здесь идёт не только о смартфонах и планшетах. Каждый сможет найти направление себе по вкусу: носимая электроника, Android TV, Android в автоиндустрии, дополненная и виртуальная реальность, интернет вещей…

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

Разработка андроид приложений: минимальный набор знаний

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

  • Языками программирования Java или Kotlin;
  • Платформой Android Studio для разработки на платформе Android;
  • Git;
  • Основными библиотеками, которые вам сильно облегчат жизнь: Retrofit (для получения данных из интернета), Glide (для загрузки изображений)
  • Архитектурными компонентами Андроид (чтобы писать чистый и надёжный код);
  • Умением писать приложение в архитектуре MVP или MVVM (для надёжности приложения, его поддержки и развития).

На чём писать приложения для Android

В принципе для разработки нужна только Android Studio, которую можно бесплатно скачать с официального сайта. Это лучшая среда разработки андроид приложений из существующих на рынке. Подойдёт любая операционная система (Mac OS, Windows, Linux). Что касается аппаратной части, желательно иметь процессор не старше пяти лет и 8 гигабайт оперативной памяти (+ 1,5 ГБ свободного места на диске). 

Если вы не знаете ничего о программировании и имеете только жгучее желание создавать, для начала нужно выучить хотя бы один язык программирования. На данный момент написать приложение для Android можно на Java или на Kotlin. Предпочтительный язык — Kotlin, но если вы планируете стать профессиональным разработчиком, то Java вам нужно хотя бы уметь «читать» (а лучше и писать на ней). Эти языки очень похожи, работают по одинаковым принципам и имеют очень похожий синтаксис. У нас на факультете Android-разработки мы начинаем изучать Java, а в середине обучения переходим на Kotlin. Так выпускник оказывается полностью подготовлен к профессии андроид-разработчика в плане языков программирования.

Чтобы с удобством изучать Java, установите среду разработки на Джаве — IntelliJ Idea Community Edition. Это бесплатная программа, лучшая на рынке. Инструкцию по установке можно найти в конце этой статьи, в дополнительных материалах.

Устанавливаем Git для хранения кода

Git — это полезный инструмент, который вам как разработчику рано или поздно понадобится. С его помощью можно хранить разные версии вашего приложения на компьютере или в облаке. Скачайте, установите его, а также прочитайте первые несколько глав из руководства. Достаточно первых трёх глав (Введение, Основы, Ветвление), чтобы освоиться с самыми полезными функциями:

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

Среда разработки андроид-приложений

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

Если вам по какой-то причине не нравится Android Studio, то можно установить Eclipse в качестве среды разработки андроид-приложений. Но Эклипс — это скорее исключение из правил. Подавляющее большинство разработчиков работают в Студии.

Также, если у вас процессор от AMD, то рекомендуется поставить в качестве эмулятора смартфона Genymotion. Если у вас процессор от Intel, то встроенного в Android Studio эмулятора будет более чем достаточно.

Разработка приложений под Android: начало

Давайте создадим наш первый проект и посмотрим, из каких компонентов он состоит. Если вы первый раз открыли Студию, то вам будет предложено выбрать какой-нибудь шаблон из набора:

Выберем Empty Activity и нажмём «Далее»:

Здесь по аналогии с IntelliJ Idea вы вводите название вашего проекта, пэкедж, выбираете язык программирования и нажимаете Finish. Перед вами откроется готовый проект, где вы и будете создавать своё приложение на Android.

Создаём эмулятор

Чтобы создать эмулятор, нажмите на AVD Manager:

В появившемся окне нажмите Create Virtual Device:

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

Выберите версию операционной системы, для которой мы в первую очередь пишем приложение под Android (скорее всего, вам нужно будет её предварительно скачать, нажав Download):

Нажмите Finish:

В появившемся окне выберите созданный эмулятор и запустите его: 

Эмулятор запустится в отдельном окне и появится рядом с кнопкой старта приложения. Нажмите на эту кнопку:

На эмуляторе запустится ваш проект:

Из чего состоит Android-приложение

Теперь давайте разберём, из каких компонентов состоит любое, даже самое простое приложение под Андроид. В папке java находится непосредственно код вашего приложения — тут вы будете создавать экраны и наполнять их содержанием: 

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

Манифест приложения содержит информацию обо всех экранах приложения:

Три основных экрана Android Studio — вот с чего начинается любое приложение под андроид. В том числе и ваше :)

Как разместить приложение в Google Play

Основной способ распространения андроид-приложений — это размещение на площадке Google Play. Кроме этого, приложения можно размещать и в Amazon AppStore, и в Yandex Store, в Shop Samsung App. Но следует помнить, что основной площадкой является Google Play. Магазин приложений Google устанавливается практически на все устройства с Android (кроме ряда «китайцев» и «индийцев»), и по умолчанию на всех этих устройствах включена опция установки приложений только с этой площадки.

Основные особенности Google Play:

  • огромная база пользователей;
  • очень много приложений: практически все существующие  Android-приложения присутствуют на этой площадке;
  • удобные инструменты для публикации;
  • быстрая форма проверки приложений (через пару часов приложение будет уже доступно).

Давайте посмотрим, как выложить своё приложение в Google Play. Перед загрузкой приложения необходимо зарегистрировать аккаунт разработчика в Google Play. Обычно советуют использовать для этого не свой личный аккаунт (если у вас почта на Gmail), а специально создать для этого ещё один аккаунт. Это связано с тем, что если робот Google Play решит заблокировать аккаунт разработчика, то ваш личный аккаунт это не затронет. Откроем страницу регистрации:

И следуем простым шагам:

Важный момент: регистрация разработчика стоит 25 долларов США. Плата берётся единовременно.

Далее, чтобы опубликовать приложение, надо зайти в аккаунт разработчика и нажать «Новое приложение». Вы попадёте в консоль разработчика:

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

После этого необходимо проверить, что все формы заполнены

Кстати, у Google есть и свой список рекомендаций по поводу того, как опубликовать своё приложение.

Для заполнения формы с версиями приложений надо подготовить релизную версию вашего приложения. то уже не debug-версия вашего приложения, которая запускалась у вас до этого момента, в эмуляторе или под отладкой на устройстве, через кнопку Run.

Как подготовить релиз-версию приложения

Вы создали приложение под Android, и теперь, чтобы его выложить, необходимо сделать следующие шаги:

  1. Подготовить подпись приложения. Приложение подписывается уникальным криптографическим ключом.
  2. Подготовить пиктограмму приложения.
  3. Подготовить скриншоты (снимки экрана) приложения. Можно отдельно подготовить скриншоты для планшетов, телевизора и прочих устройств.
  4. Проверить манифест приложения. Проверяются права, версия приложения. Проверяются версии SDK, под какие готовится приложение. Удаляется логирование приложения. Проверяются ресурсы приложения.
  5. Собрать релиз-версию проекта и подписать её уникальным ключом.
  6. Подготовить удалённые сервера, если приложение работает с такими серверами.
  7. Протестировать релиз-версии подписанного приложения.
  8. После релиза приложения в магазине желательно скачать и удостовериться, что всё прошло гладко. Помните, пользователи будут очень недовольны и начнут минусовать ваше приложение, если новая версия будет падать или что-то случится при выкладке приложения, и оно станет неработоспособно.

Пройдёмся по важным понятиям на этом этапе.

Уникальный ключ приложения (сертификат)

Чтобы загрузить приложение на площадку и установить на устройство, требуется, чтобы приложение было подписано вашим уникальным криптографическим ключом. По этому ключу всегда можно отличить подлинность приложения и обновлений. Этот ключ находится у разработчика, он называется app singing key. А Keystore — это файл, в котором хранится ключ. У ключа есть имя и пароль, хранится ключ в keystore, от которого тоже должен быть пароль. Так много паролей нужно, чтобы никто не смог украсть ваше приложение.

Когда вы пишете приложение на андроид, то Android SDK автоматически подписывает debug версию, и кладёт цифровой сертификат и keystore в папку $HOME/.android/debug.keystore. Google Play не принимает debug ключи. Необходимо подписывать приложение релиз-сертификатом. Этот сертификат должен быть один на протяжении всей жизни приложения. 

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

Сервис Google Play

Если вы выбрали использовать Google Play App singing, вы подписываете приложение с ключом для загрузки его в Google Play (upload key), и уже сам Google Play подписывает приложение уникальным ключом, а впоследствии несёт ответственность за его хранение. Тогда при потере upload key (ключа для загрузки приложения) вы сможете верифицироваться с Google, и сгенерировать новый. Таким образом, вы сможете в любом случае загрузить обновления вашего приложения, даже если вы поменяли загрузочный ключ. 

Самостоятельное хранение

Если вы сами храните ключ, то вся ответственность в этом случае лежит на вас. При потере ключа Google Play не сможет вам помочь и обновить приложение вы уже не сможете.

Как подписать приложение в Android Studio

Подпись можно сделать вручную или настроить всё так, чтобы приложение подписывалось в процессе сборки. Вот как сгенерировать новый ключ и keystore файл.

Зайдите в Build и выберите Generate Signed APK:

Выберите тип подписи:

В окне New Key Store заполните форму:

После компиляции проекта найдите получившийся файл:

Это уже готовый файл для загрузки его в Play Google.

Кроме того, нужно учесть, что иконка вашего приложения должна соответствовать определённым требованиям. Их можно прочитать на сайте, посвящённом Material Design. 

Для публикации приложения после его загрузки обязательно нажмите кнопку «Просмотреть»:

И только после этого можно опубликовать приложение:

Перед публикацией приложения Google проверяет его, его описание, прочую информацию, и только после этого приложение появляется в Маркете. 

Где ещё можно опубликовать приложение

Кроме Google Play, существуют и другие площадки для размещения приложений — Amazon Appstore, Shop Samsung App, Yandex Store. Некоторые разработчики также добавляют свои приложения и в эти альтернативные магазины. Вот некоторые причины:

  • В альтернативных площадках условия могут оказаться выгоднее, регистрация на некоторых площадках бесплатная. В отличие от Google Play, который, как мы помним, требует единоразовый взнос в 25 долларов. Сторонние магазины могут привлекать пользователей, устраивая акции для покупателей.
  • В основной площадке Google Play очень много приложений, и очень жёсткая конкуренция. Старые и популярные приложения часто оказываются выше новых в списках поиска.
  • В Google Play существует фильтр, и если приложение не соответствует стандартам и принципам Google, то такое приложение удаляется, а аккаунт пользователя может быть заблокирован. Причём, зачастую, это «заслуга» автоматических сервисов.

Как монетизировать приложение

Если вы не крупная компания, которая распространяет свой продукт бесплатно (например какой-нибудь интернет-магазин, или банк), у вас есть несколько способов заработать на своём приложении:

  • продажа самого приложения;
  • вставка рекламы в приложения;
  • продажа платных функций в приложении;
  • продажа подписки на определённый период;
  • донаты — добровольные платежи от пользователей.

Вам, как разработчику, нужно определиться со способом монетизации, который лучше всего соответствует вашему приложению. Баланс между количеством пользователей и прибылью — вещь очень хрупкая. Вот несколько рекомендаций от разработчиков Google, как его достичь:

  • Изучайте сведения о приложениях из категории, к которой относится ваше. Узнайте, как другие разработчики получают средства за свои приложения и материалы, и определите, следует ли предложить пользователям альтернативные способы оплаты.
  • Подумайте о том, как пользователи будут работать с вашим приложением. Это поможет вам определить наиболее подходящие способы монетизации. От частоты использования приложения зависит эффективность монетизации при помощи рекламы или покупок в приложении. Вы также можете предлагать пользователям приобрести версию приложения без рекламы.
  • Используйте естественные расширения. Если функциональность можно расширить (например, добавить новые уровни в игре), рекомендуем сделать базовую часть бесплатной, а дополнительные функции продавать через приложение или на основе подписки.
  • Продумайте структуру затрат в своём приложении. Если пользователи регулярно расходуют на ваш контент определённую сумму, вы можете внедрить подписки. Чтобы привлекать новых пользователей, предлагайте им бесплатный пробный период.
  • Учитывайте особенности аудитории. Для некоторых аудиторий не всегда подходят реклама, подписки и покупки в приложении. Например, в детских играх пользователи охотнее платят за отсутствие рекламы. В таких случаях пользователям лучше предлагать версии приложений без рекламы.
  • Назначайте цены с учётом особенностей целевой страны. Формируйте цены на приложения, покупки в них, а также подписки, исходя из уровня жизни, специфики ценообразования, стоимости аналогичных приложений и иных факторов в целевой стране.

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

Полезные материалы для чтения и самоподготовки

Head First. Программирование для Android. Хотя эта книга немного устарела, она объясняет ключевые концепции очень интересным способом. Если вам понравился стиль Head First, вам будет приятно читать эту книгу.

Филлипс Б., Стюарт К., Марсикано К.Android. Программирование для профессионалов. 3-е издание. Действительно неплохая книга, которую можно смело рекомендовать начинающим разработчикам. В ней они смогут найти множество приёмов разработки приложений для Android, самостоятельный путь к которым довольно долог. Книга начинается с «Hello, world» и через теорию, упражнения и написание небольших приложений, обучает основному стеку технологий для создания Android-приложения. Требует среднего знания Java.

Исакова С., Жемеров Д. Kotlin в действии. Книга от создателей языка. Очень хорошо написана, советую.

Нуркевич Т., Кристенсен Б. Реактивное программирование с применением RxJava. Разработка асинхронных событийно-ориентированных приложений. Книга, которая на примере RxJava поможет понять вам, что такое реактивное программирование. Требует неплохого знания Java (по крайней мере, вы должны понимать, что такое обобщённые типы и лямбда-выражения) и предполагает последовательное чтение, так как материал подаётся шаг за шагом. Внимательный читатель получит полное представление об RxJava.

Напоследок — ещё пара статей на английском для тех, кто хочет разработать приложение на Android: «10 вещей, которые узнают новые Android-разработчики» и «12 методов, который должен знать каждый начинающий Android-разработчик».

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

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

Другие полезные статьи для начинающих Android-разработчиков:

  • 9 практических советов для начинающего Android-разработчика
  • Типичные ошибки начинающего Android-разработчика

Изучение разработки приложений для Android может показаться сложной задачей, но оно может открыть целый мир возможностей. Вы можете создать следующее «хитовое приложение», которое изменит то, как мы работаем или взаимодействуем друг с другом. Возможно, вы разработаете инструмент, который сможете использовать сами для улучшения рабочего процесса. Или, возможно, вы просто приобретете новый навык, который подняться по карьерной лестнице!

Читайте также: Введение в синтаксис Java для разработки под Android

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


Шаг 1. Загрузка инструментов, необходимых для разработки приложений для Android.

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

Android Studio — это IDE. Это означает «интегрированная среда разработки», которая по сути представляет собой интерфейс, в котором вы можете ввести свой код (в основном Java или Kotlin) и получить доступ к различным инструментам, необходимым для разработки. Android Studio позволяет получать доступ к библиотекам и API из Android SDK, тем самым предоставляя вам доступ к собственным функциям операционной системы. Вы также сможете встроить свое приложение в APK с помощью Gradle, протестировать его через «виртуальное устройство» (эмулятор) и отлаживать свой код во время его работы.

Руководство по разработке приложений для Android

Учитывая все вышесказанное, имейте в виду, что существуют и другие варианты разработки приложений для Android. Например, Unity — очень мощный инструмент для кроссплатформенной разработки игр, который также поддерживает Android. Точно так же Visual Studio с Xamarin — отличное сочетание для создания кроссплатформенных приложений на C#.

Android Studio — лучшее место для начала (за исключением разработки игр для Android), особенно потому, что она предоставляет все эти дополнительные инструменты и ресурсы в одном месте.

К счастью, настройка очень проста, и вам нужно только следовать инструкциям на экране.

Если вам нужна помощь в настройке, ознакомьтесь с нашим руководством по Android Studio для начинающих.


Шаг 2: Начните новый проект

Когда на вашем компьютере установлена ​​Android Studio, следующим шагом будет запуск нового проекта. Это простой процесс, но вам нужно будет принять несколько решений, которые повлияют на дальнейшую разработку вашего приложения для Android.

Начните новый проект

Выберите File > New > New Project . Теперь вам будет предложено выбрать «Project Template». Это определяет код и элементы пользовательского интерфейса, которые будут включены в ваше новое приложение при его загрузке.

Слово «Activity» относится к «экрану» в приложении. Таким образом, проект с «No Activity» будет полностью пустым, если не считать базовой файловой структуры. С другой стороны, «Basic Activity» создаст начальный экран для приложения и добавит кнопку внизу и меню-гамбургер вверху. Это общие элементы во многих приложениях для Android, так что это сэкономить вам время.

Тем не менее, это также может усложнить ситуацию, когда вы впервые столкнетесь с разработкой. По этой причине мы собираемся выбрать «No Activity». Это создаст для нас активность и несколько файлов, но не добавит много дополнительного кода.

No Activity

Выберите имя и «package name» для вашего нового приложения. Имя — это то, что увидит ваша аудитория, когда приложение будет установлено на их устройстве. Package name — это внутренняя ссылка, используемая Android, чтобы отличить его от других приложений. Оно должно быть составлено с использованием вашего домена верхнего уровня (например, .ru), доменного имени и имени приложения.

Например: ru.xpcom.sampleapp.

Если у вас нет домена или компании, просто используйте «ru», а затем что-то, что вам нравится!

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

Java против Kotlin при разработке приложений для Android

Одно из самых важных решений, которое вам нужно будет принять как разработчику Android, — это собираетесь ли вы изучать Kotlin или Java. Оба языка официально поддерживаются Google и Android Studio, но имеют некоторые отличия.

Java дольше всех поддерживается Google, и именно его разработчики годами используют для создания приложений для Android. Java также является одним из самых востребованных языков программирования в мире, что делает его отличным выбором для тех, кто хочет начать карьеру в сфере разработки. Как самый старый язык программирования для Android, Java также немного больше поддерживает по сравнению с Kotlin, хотя и ненамного.

Java против Kotlin при разработке приложений для Android

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

По этим причинам Kotlin, вероятно, является предпочтительным языком для Android-разработчиков, которые учатся для развлечения или не стремятся разрабатывать для других платформ. Однако Java имеет больше смысла, если вы хотите стать профессиональным разработчиком.

Вы можете узнать больше об этих двух вариантах здесь, прочитав наше руководство Kotlin vs Java для Android .

Минимальный SDK

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

Чем меньше вы сделаете это число, тем шире будет ваша потенциальная аудитория. Имейте в виду, что для последних версий Android характерен относительно низкий уровень внедрения, поэтому использование последнего обновления не позволит многим пользователям попробовать ваше творение.

Минимальный SDK

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


Шаг 3: Ознакомьтесь с файлами

Я помню, как впервые попробовал разработку приложений для Android. Я загрузил Android Studio и сразу же был озадачен увиденным. Там так много разных файлов, несколько типов кода, папок и многого другого! Это было далеко от единственного пустого файла, с которым я привык работать в Python или даже в QBasic (кто-нибудь помнит QBasic??).

Это может быть довольно сложно, но вот что вам нужно знать.

Ознакомьтесь с файлами

Открытый файл называется MainActivity.java или MainActivity.kt. Это основной файл логики для действия, которое будет определять поведение вашего приложения. Посмотрите слева, и вы увидите, что этот файл находится в: MyApplication > app > src > main > java > com > companyname > myapplication .

Используемые папки важны для разработки приложений для Android, поскольку они помогают Android Studio и Gradle находить все и правильно создавать (подробнее о Gradle чуть позже). Достаточно сказать, что вы не можете просто переименовать их по своему усмотрению!

Вы заметите, что на главной странице уже есть какой-то код. Это то, что мы называем «шаблонным кодом», что означает, что это код, который почти идентичен для разных проектов приложений и необходим для работы основных функций. Шаблонный код — это то, что вам придется вводить снова и снова! Одним из преимуществ Kotlin является то, что он требует меньше шаблонного кода, а это означает, что у вас будет меньше кода на экране, если вы выбрали именно его.

Знакомство с файлами layout (макета)

Роль этого кода состоит в том, чтобы сообщить Android, где находится соответствующий файл макета. Файл макета немного отличается от файла Kotlin/Java. Это определяет внешний вид действия и позволяет добавлять такие элементы, как кнопки, текст и окна браузера.

Вы найдете этот файл в: MyApplication > app > src > res > layout .

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

Знакомство с файлами layout (макета)

Вы можете просмотреть этот файл в представлении «Code», в представлении «Design» или в разделенном представлении, в котором эти окна отображаются рядом. В правом верхнем углу есть кнопки для переключения режима.

В представлении «Design» вы можете перетаскивать различные виджеты на экран. Представление кода показывает загрузку XML-скрипта. Когда вы добавляете новые виджеты через представление «Design», этот скрипт будет обновляться. Точно так же вы можете настроить свойства виджетов (называемых «views») здесь и увидеть их отражение в режиме реального времени через представление «Code».

В подавляющем большинстве приложений вам потребуется создавать новый файл Java/Kotlin и соответствующий XML-файл каждый раз, когда вам нужно новое действие. И для тех, кто задавался вопросом: да, это означает, что вам нужно изучать либо Kotlin, либо Java и XML. Это может показаться головной болью, но на самом деле упрощает процесс в долгосрочной перспективе.

Остальные файлы и папки

Но здесь гораздо больше файлов и папок, так что же они все делают?

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

Манифест Android: это XML-файл в папке res, определяющий важные функции вашего приложения. Это включает в себя ориентацию приложения, действия, которые вы хотите включить в него, версию и т. д.

Смотрите также: Как установить Java и все остальное, что вам нужно знать

Drawable: эта папка находится в res. Здесь вы будете размещать такие вещи, как изображения, на которые вы хотите сослаться позже.

Values: эта папка ресурсов является удобным местом для хранения значений, которые будут использоваться глобально в вашем приложении. Например, это могут быть коды цветов (упрощающие изменение внешнего вида всего приложения) или строки (слова). Вы определите эти значения в отдельных XML-файлах, таких как colors.xml.

Gradle: Gradle — это инструмент, который берет все ваши файлы и объединяет их в работоспособный APK для тестирования. Он полезен для создания предварительных просмотров и т. д. Вам не нужно будет часто беспокоиться о файлах здесь, но если вы хотите добавить «зависимость», вы можете сделать это здесь. Зависимости — это внешние библиотеки, которые позволяют получить доступ к дополнительным функциям из вашего собственного кода.

Шаг 4. Протестируйте свое приложение

Первое, что вы должны сделать при знакомстве с любым новым языком программирования, — это создать приложение с надписью «Hello World». К счастью, в данном случае это очень просто, потому что это то, что делает код, который мы создали! Если вы посмотрите на XML, он включает небольшую метку, которая просто говорит: Hello World!

Если вы посмотрите на элементы управления вверху, вы увидите маленькую зеленую стрелку воспроизведения. Слева от неё находится раскрывающееся меню с именем телефона. Когда вы установили Android Studio, также должен был быть установлен образ системы Android вместе с диспетчером виртуальных устройств. Другими словами, у вас уже должен быть установлен и готов к работе эмулятор Android! Нажав на эту зеленую стрелку, вы сможете запустить ее и протестировать свое приложение! Обратите внимание, что это также позволит вам использовать эмулированный телефон, как если бы это было настоящее устройство.

Вы можете изменить настройки своего виртуального устройства, такие как размер экрана, версия Android, пространство и т. д., выбрав «Tools» > «AVD Manager» . Также здесь вы можете скачать новые образы системы. Убедитесь, что ваше виртуальное устройство соответствует или превышает минимальный SDK, который вы установили в начале.

Кроме того, вы можете попробовать подключить настоящий смартфон к компьютеру и использовать его для тестирования приложения. Однако вам нужно включить режим разработчика и включить отладку по USB.

Смотрите также: Python или Java: какой язык лучше изучать и в чем различия?


Шаг 5: Сделай что-нибудь!

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

Изменить отображаемое сообщение так же просто, как войти в свой XML и изменить строку с надписью «Hello World!» в «Привет, мир!»

Но что, если вы хотите добавить в свое творение какой-то интерактивный элемент? В этом случае вы можете разрешить пользователю щелкнуть кнопку, чтобы изменить текст.

Сделай что-нибудь!

Во-первых, вам нужно поместить эту строку внутри тега TextView в файле activity_main.xml:

android:id="@+id/helloButton"
android:onClick="onHelloButtonClick"

Это даст текстовой метке имя «helloButton» и укажет, что метод «onHelloButtonClick» будет ссылаться на это представление. Мы собираемся добавить это в наш код.

Теперь вы можете добавить следующий код в файл MainActivity. Если вы видите, что какой-либо текст становится красным, когда вы его печатаете, это означает, что вам нужно «импортировать» этот код из Android SDK. Нажмите на красный текст, затем нажмите Alt+Enter, и Android Studio сделает это за вас автоматически. Короче говоря, это сообщает Android, что вы ссылаетесь на библиотеку, которая является частью Android SDK.

(Следующий пример написан на Java.)

public class MainActivity extends AppCompatActivity {

    TextView helloButton;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        helloButton  = (TextView) findViewById(R.id.helloButton);
        }

        public void onHelloButtonClick (View v) {
        helloButton.setText("Привет мир!");
    }
}

В этом примере кода мы сначала создаем «объект» в коде с именем «helloButton». Затем внутри нашего метода onCreate (все в фигурных скобках) мы сообщаем Android, что этот объект представляет кнопку в нашем файле макета. Код, который вы размещаете здесь, будет запускаться первым при запуске приложения.

Затем мы создаем метод, который запускается, когда кто-то нажимает на кнопку. Как только это произойдет, мы можем изменить текст на указанной кнопке. Обратите внимание, что снова Kotlin требует значительно меньше строк для достижения той же цели!

Запустите приложение, и теперь вы должны увидеть, что при нажатии на кнопку текст меняется!

Это очень простое приложение, но оно демонстрирует основы разработки приложений для Android. Как правило, вы будете создавать новые экранные элементы в файле макета, а затем определять их поведение в соответствующем файле Java или Kotlin.

Python или Java: структура и дизайн

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

У нас есть подробное руководство по Java , которое поможет вам начать работу.

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

Понравилась статья? Поделить с друзьями:
  • Мазь counterpain инструкция на русском языке
  • Подъемный механизм блюм для кухонных фасадов инструкция по применению
  • Выкройка основа юбки пошаговая инструкция для начинающих
  • Visio инструкция для начинающих на русском
  • Инструкция по монтажу откатных ворот дорхан с электроприводом