- Начало работы с собственной разработкой Android в Windows
- Установка Android Studio
- Создание проекта
- Java или Kotlin
- Минимальный уровень API
- Мгновенная поддержка приложений и артефакты Androidx
- Файлы проекта
- Использование C или C++ для разработки игр для Android
- Рекомендации по проектированию
- система Fluent Design для Android
- Дополнительные ресурсы
Начало работы с собственной разработкой Android в Windows
Это руководство поможет вам приступить к использованию Windows для создания собственных приложений Android. Если вы предпочитаете кроссплатформенное решение, см. статью Обзор разработки android в Windows , чтобы получить краткую сводку по некоторым вариантам.
Самый простой способ создания собственного приложения Android — использовать Android Studio с Java или Kotlin, хотя для разработки android также можно использовать C или C++ , если у вас есть определенная цель. Средства пакета SDK для Android Studio компилируют файлы кода, данных и ресурсов в архивный пакет Android, APK-файл. Один apk-файл содержит все содержимое приложения Android и является файлом, который устройства на платформе Android используют для установки приложения.
Установка Android Studio
Android Studio — это официальная интегрированная среда разработки для операционной системы Android от Google. Скачайте последнюю версию Android Studio для Windows.
- Если вы скачали файл .exe (рекомендуется), дважды щелкните его, чтобы запустить его.
- Если вы скачали .zip файл, распакуйте ZIP-файл, скопируйте папку android-studio в папку Program Files, а затем откройте папку android-studio > bin и запустите studio64.exe (для 64-разрядных компьютеров) или studio.exe (для 32-разрядных компьютеров).
Следуйте указаниям мастера установки в Android Studio и установите все рекомендуемые пакеты SDK. По мере того как новые средства и другие API-интерфейсы становятся доступными, Android Studio уведомит вас о всплывающем окне или проверка обновлений, выбрав Справка>проверить наличие обновлений.
Создание проекта
Выберите Файл>Новый>новый проект.
В окне Выбор проекта вы сможете выбрать один из следующих шаблонов:
- Базовое действие. Создает простое приложение с панелью приложения, плавающей кнопкой действия и двумя файлами макета: для действия и для разделения текстового содержимого.
- Пустое действие. Создает пустое действие и один файл макета с примером текстового содержимого.
- Действие нижней навигации. Создает стандартную нижнюю панель навигации для действия. Дополнительные сведения об этом см. в разделе Компонент нижней навигации руководства google по проектированию материалов .
- Шаблоны обычно используются для добавления действий в новые и существующие модули приложений. Например, чтобы создать экран входа для пользователей приложения, добавьте действие с помощью шаблона Действия входа. Дополнительные сведения о выборе действия и добавлении кода из шаблона см. в руководстве разработчиков для Android от Google.
Операционная система Android основана на идее компонентов и использует терминыдействие и намерение для определения взаимодействий. Действие представляет одну целевую задачу, которую может выполнить пользователь. Действие предоставляет окно для создания пользовательского интерфейса с помощью классов, основанных на классе View. Существует жизненный цикл действий в операционной системе Android, определенный шестью обратными вызовами: onCreate() , onStart() , onResume() , onPause() , onStop() и onDestroy() . Компоненты действия взаимодействуют друг с другом с помощью объектов намерений . Намерение определяет действие, которое нужно запустить, или описывает тип выполняемого действия (и система выбирает соответствующее действие, которое может быть даже из другого приложения). Дополнительные сведения о действиях, жизненном цикле действий и намерениях см. в руководстве разработчиков для Android от Google.
Java или Kotlin
Java стал языком в 1991 году, разработанным в то время Sun Microsystems, но который в настоящее время принадлежит Oracle. Он стал одним из самых популярных и мощных языков программирования с одним из крупнейших сообществ поддержки в мире. Java основан на классах и объектно-ориентированных, предназначен для того, чтобы иметь как можно меньше зависимостей реализации. Синтаксис аналогичен C и C++, но имеет меньше низкоуровневых возможностей, чем любой из них.
Kotlin был впервые объявлен в качестве нового языка с открытым кодом JetBrains в 2011 году и включен в качестве альтернативы Java в Android Studio с 2017 года. В мае 2019 года Google объявила Kotlin в качестве предпочтительного языка для разработчиков приложений Android, поэтому, несмотря на то, что он является более новым языком, он также имеет сильное сообщество поддержки и был определен как один из самых быстрорастущих языков программирования. Kotlin является кроссплатформенным, статически типизированным и предназначен для полного взаимодействия с Java.
Java более широко используется для более широкого спектра приложений и предлагает некоторые функции, которых нет в Kotlin, такие как проверенные исключения, примитивные типы, которые не являются классами, статические члены, не частные поля, типы с подстановочными знаками и тернарные операторы. Kotlin специально разработан для Android и рекомендуется. Он также предлагает некоторые функции, которые нет в Java, такие как пустые ссылки, контролируемые системой типов, отсутствие необработанных типов, инвариантные массивы, правильные типы функций (в отличие от преобразования SAM Java), дисперсию сайта использования без подстановочных знаков, интеллектуальные приведения и многое другое. Дополнительные сведения о сравнении с Java см. в документации по Kotlin.
Минимальный уровень API
Вам потребуется выбрать минимальный уровень API для приложения. Это определяет, какую версию Android будет поддерживать ваше приложение. Более низкие уровни API старше и, следовательно, обычно поддерживают больше устройств, но более высокие уровни API являются более новыми и поэтому предоставляют больше возможностей.
Щелкните ссылку Справка по выбору , чтобы открыть сравнительный график с распределением поддержки устройств и ключевыми функциями, связанными с выпуском версии платформы.
Мгновенная поддержка приложений и артефакты Androidx
Вы можете заметить флажок Поддержка мгновенных приложений , а другой — использовать артефакты androidx в параметрах создания проекта. Поддержка мгновенных приложений не проверяется, а androidx — как рекомендуемое значение по умолчанию.
Мгновенные приложения Google Play предоставляют пользователям возможность попробовать приложение или игру, не устанавливая их в первую очередь. Эти мгновенные приложения можно использовать в Play Store, Google Search, социальных сетях и в любом месте, где вы делитесь ссылкой. Установив флажок Поддержка мгновенных приложений , вы просите Android Studio включить пакет SDK google Play Instant Development в проект. Дополнительные сведения о мгновенных приложениях Google Play см. в руководстве разработчика для Android.
Артефакты AndroidX представляют новую версию библиотеки поддержки Android и обеспечивают обратную совместимость между выпусками Android. AndroidX предоставляет согласованное пространство имен, начиная со строки androidx для всех доступных пакетов.
Теперь androidX является библиотекой по умолчанию. Чтобы снять этот флажок и использовать предыдущую библиотеку поддержки, необходимо удалить последний пакет SDK для Android Q. Инструкции см. в статье Отмена проверки использования артефактов Androidx в StackOverflow, но сначала обратите внимание, что предыдущие пакеты библиотеки поддержки были сопоставлены с соответствующими пакетами androidx.*. Полное сопоставление всех старых классов и артефактов сборки с новыми см. в разделе Миграция на AndroidX.
Файлы проекта
Окно Проекта Android Studio содержит следующие файлы (убедитесь, что в раскрывающемся меню выбрано представление Android):
app > java > com.example.myfirstapp > MainActivity
Действие main и точка входа для приложения. При сборке и запуске приложения система запускает экземпляр этого действия и загружает его макет.
activity_main.xmlмакета > res > приложения >
XML-файл, определяющий макет пользовательского интерфейса действия. Он содержит элемент TextView с текстом «Hello World».
манифесты приложений >> AndroidManifest.xml
Файл манифеста, описывающий основные характеристики приложения и каждого из его компонентов.
Gradle Scripts > build.gradle
Существует два файла с таким именем: «Проект: мое первое приложение» для всего проекта и «Модуль: приложение» для каждого модуля приложения. Новый проект изначально будет содержать только один модуль. Используйте файл build.file модуля, чтобы управлять тем, как подключаемый модуль Gradle создает ваше приложение. Дополнительные сведения о настройке сборки см. в руководстве разработчика для Android.
Использование C или C++ для разработки игр для Android
Операционная система Android предназначена для поддержки приложений, написанных на Java или Kotlin, с помощью инструментов, встроенных в архитектуру системы. Многие системные функции, такие как пользовательский интерфейс Android и обработка намерений, предоставляются только через интерфейсы Java. В некоторых случаях может потребоваться использовать код C или C++ с помощью пакета средств разработки Android Native Development Kit (NDK), несмотря на некоторые связанные с этим проблемы. Примером является разработка игр, так как в играх обычно используется пользовательская логика отрисовки, написанная на языке OpenGL или Vulkan, и используются богатые библиотеки C, ориентированные на разработку игр. Использование C или C++ также может помочь выжать дополнительную производительность устройства для достижения низкой задержки или запуска приложений с большим объемом вычислений, таких как физическое моделирование. Однако NDK не подходит для большинства начинающих программистов Android . Если у вас нет конкретной цели для использования NDK, мы рекомендуем использовать Java, Kotlin или одну из кроссплатформенных платформ.
Чтобы создать проект с поддержкой C/C++, выполните приведенные далее действия.
- В разделе Выбор проекта мастера Android Studio выберите тип проекта Native C++*. Нажмите кнопку Далее, заполните остальные поля, а затем нажмите кнопку Далее еще раз.
- В разделе Настройка поддержки C++ мастера можно настроить проект с помощью поля C++ Standard . Используйте раскрывающийся список, чтобы выбрать, какую стандартизацию C++ вы хотите использовать. При выборе цепочки инструментов по умолчанию используется параметр CMake по умолчанию. Нажмите кнопку Завершить.
- После создания нового проекта в Android Studio на панели Проект можно найти папку cpp, содержащую собственные исходные файлы, заголовки, скрипты сборки для CMake или ndk-build и предварительно созданные библиотеки, которые являются частью проекта. Вы также можете найти пример исходного файла C++ в папке src/main/cpp/ , которая предоставляет простую stringFromJNI() функцию, native-lib.cpp возвращающую строку «Hello from C++». Кроме того, вы должны увидеть скрипт сборки CMake в корневом каталоге модуля, CMakeLists.txt необходимом для создания собственной библиотеки.
Дополнительные сведения о добавлении кода C и C++ в проект см. в руководстве разработчика для Android. Примеры NDK для Android с интеграцией C++ см. в репозитории примеров NDK для Android на сайте GitHub. Чтобы скомпилировать и запустить игру C++ на Android, используйте API служб Google Play Game.
Рекомендации по проектированию
Пользователи устройств ожидают, что приложения будут выглядеть и вести себя определенным образом. Независимо от того, проводите ли вы пальцем, касаясь или используя голосовые элементы управления, пользователи будут ожидать, как должно выглядеть ваше приложение и как его использовать. Эти ожидания должны оставаться последовательными, чтобы уменьшить путаницу и разочарование. Android предлагает руководство по ожиданиям платформы и устройств, которое сочетает в себе основу Google Material Design для визуальных и навигационных шаблонов, а также рекомендации по качеству для совместимости, производительности и безопасности.
система Fluent Design для Android
Корпорация Майкрософт также предлагает рекомендации по проектированию, чтобы обеспечить бесперебойную работу во всем портфеле мобильных приложений Майкрософт.
система Fluent Design для Android проектирование и создание пользовательских приложений, которые изначально являются Android, но по-прежнему уникальными Fluent.