На чём пишут приложения для android

Введение

Года 2-3 назад в новогодние праздники у меня выдались свободные дни, и я размышлял, чем бы мне заняться. Вообще, в программировании и ИТ я, так или иначе, всю жизнь, но вот на мобильные платформы ничего писать не доводилось. Но тянуло… Всё равно мы все с телефоном чуть ли не 24 часа в сутки. Интересно же под него писать то, что мне нужно? Безумно интересно. Погодите, а что мне нужно? Метания не были долгими и мучительными. Банальный «хэлловорлд» писать скучновато и на один вечер, поэтому поначалу я хотел парсить сайт с расписанием сеансов кино. Но, бегло погуглив, сразу понял, что всё это давно есть. Особняком всегда для меня стояли программы для чтения, я пользовался ими со времён коммуникаторов/наладонных компьютеров для WinCE. Именно поэтому выбор пал на проект CoolReader (далее буду звать его CR).

Что такое CR? Это одна из старейших читалок, которая до сих пор крайне популярна. Суждение отчасти субъективное (я много вижу в автобусах и метро читающих именно на CR до сих пор), а отчасти объективное (попробуйте ввести в поиске PlayMarket слово «reader», и CR будет одним из первых предложений). Когда-то давно я выбрал для себя эту читалку и на долгие годы забыл, что существуют вообще другие (естественно ставил всем друзьям и знакомым). Это сейчас их много разных и интересных, а тогда было не особо. Т.е. для меня использование CR было как само-собой разумеющееся, хотя немного напрягало, что с некоторых пор приложение перестало обновляться. Как-то раз я попытался перейти на другое приложение, и даже купил премиум версию. Но всё-таки не пошло — CR оказался удобнее в плане UI, хоть это раскрывается и не сразу. Пример того, с чем я не смог смириться:

  1. В CR выделить текст можно просто двумя тапами в разное место экрана — текст выделяется между тапами;
  2. Если нужно выделить одно слово, то можно сделать это просто двойным тапом.

Это позволяет выполнить перевод слова или фразы в словаре за доли секунды. Стандартное андроидовское поведение (сделать длинный тап, подвигать указатели начала и конца) для читалок не подходит, неудобно.

Работа со словарями вообще оказалась критичной для меня, а потому я сразу понял, чего мне не хватало от читалки. Мне нужна возможность настройки двух словарей. Один словарь — это классно: выделили слово/фразу и тут же перевели. Но разные словари — это разные словари. Можно настроить GoldenDict или Abbyy для чтения книг на английском (они оба по-своему хороши). Хорош aard2, в который можно залить, например, оффлайновую википедию (да, всю википедию оффлайн!).

Coursera

Курс создан для тех, кто хочет начать разрабатывать Android — приложения. Соответственно, задачи курса:

  • Познакомить с платформой Android.
  • Познакомить с интегрированной средой разработки — Android Studio.
  • Разобраться в структуре проекта.
  • В общем изучить компоненты Android приложения.
  • Изучить UI составляющую приложений — Activity, Fragment, их жизненный цикл.
  • Изучить элементы интерфейса, предоставляемые Android SDK.
  • Разобраться с хранением простых строковых данных в файлах Preferences.

Буквально за 2-3 дня вы разберетесь в основах андроид и создадите собственный проект.

Полная совместимость с Java

Kotlin спроектирован так, чтобы его можно было применять везде, где используется Java: они полностью совместимы. Одна часть кода приложения может быть на Java, а другая — на Kotlin, и всё будет прекрасно работать. Вы сможете обращаться к классам, написанным на Kotlin, из Java-кода и наоборот без ограничений.

Кстати, при разработке Android-приложений применяется Java не выше 7-й версии, где недоступны stream api, методы интерфейсов по умолчанию и другие возможности. Android Studio 3.0 позволяет использовать только некоторые фичи Java 8. В Kotlin же есть все эти инструменты — и даже больше.

Начало

Пользователи среды могут программировать на языках Java, C++ и Kotlin. Планируется, что последний со временем полностью заменит привычный Java, который пока остается основным. Для работы потребуется от 3 (минимум) до 8 Гб (желательно) оперативной памяти плюс дополнительный гигабайт для Android Emulator. Свободного места на жестком диске должно быть не меньше, чем 2 Гб.

Процесс установки Андроид Студио мало чем отличается от других программ

Если используется Microsoft Windows, подойдут версии 2003, Vista, 7–10. Для OS X нужен Mac от 10.8.5 до 10.13 / 10.14 (High Sierra/Mojave). Для Linux – KDE или GNOME. Изготовление приложения проходит в несколько этапов:

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

Если собираетесь работать с Java, обязательно установите последнюю версию JDK. Скачать ее можно на официальном сайте. Помимо главной программы, для работы также потребуются элементы Андроид SDK – скрипты, библиотеки, документы, файлы. Эти компоненты будут скачаны автоматически. В установочный комплект также входит Андроид Emulator.

Проверяйте количество свободного места на диске

Следующим шагом станет определение адресов Студио и СДК. Их предлагается установить в отдельные папки. Перед началом инсталляции стоит убедиться, что на выбранном диске достаточно места. Сама Studio требует не так много свободного пространства, а вот элементы SDK занимают больше 3 Гб. Это минимум, так как затем потребуется дополнительная площадь для обновлений.

Каждое приложение, сделанное под Андроид, должно состоять из четырех точек входа:

  • Service. Компонент, обеспечивающий работу в фоновом режиме. Он отвечает за выполнение удаленных и длительных операций при выключенном визуальном интерфейсе.
  • Activity. Элементы интерактивного управления. Через класс Intent передается информация о намерениях пользователя. Активности устроены по подобию веб-страниц. Intent выполняет функцию ссылок между ними. Запускается приложение посредством activity Main.
  • Broadcast receiver. «Широковещательный приемник» передает намерения одновременно разным участникам.
  • Content provider. «Поставщик содержимого» передает нужную информацию из БД SQLite, файловой системы и других хранилищ.

Разработка приложения начинается с нового проекта. В меню последовательно выбираем Tools, Android, SDK Manager. В нашем примере последней версией является Андроид API 26. Выбирайте новейшую версию, поставив напротив нее галочку, и приступайте к скачиванию.

Выбирайте новейшую версию Андроид SDK

После нажатия New project появится форма нового проекта. В поле Application name выбираем FirstGame, Company domain – оставим без изменения. Путь к проекту Project location должен быть целиком на английском языке. В следующем окне оставьте галочку только напротив Phone and Tablet.

В этом окне определяется версия ОС для мобильных и планшетов

Теперь выберем версию ОС, с которой сможет запускаться игра. Чем ниже она будет, тем больше пользователей получат доступ к приложению. С другой стороны, разработчику тогда доступно меньше опций. Поочередно выбираем Empty Activity, Next, Next, Finish. Проект готов к работе.

С каждым запуском Студио открывается вкладка «Совет дня» (Tip of the day). Для начинающих программистов от этой опции мало толку, но по мере знакомства со средой рекомендации начнут казаться интересными и полезными. Вообще, для новичков многое будет выглядеть таинственно и даже страшновато. Не стоит бояться трудностей. Накапливайте опыт и непонятное быстро станет простым и ясным. В конце концов, это не изучение языка программирования.

Сетевые возможности

Всё плохо… Было. Стало:

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

Добавлена возможность открытия книг с Яндекса/Dropbox.

Добавлена синхронизация позиции чтения между устройствами, а также синхронизация закладок и настроек. Думаю, сделана далеко не хуже пропиетарных решений от Onyx, PocketBook и подобных.
Google.Drive. Они сами виноваты. Изначально сделал, затем они свою библиотеку для андроида посчитали устаревшей, на новую переходить уже не захотелось, кончился кредит доверия.

Отдельно отмечу Яндекс — самые что ни на есть некривые и простые API с которыми «не больно» разбираться и «жить дальше». Все остальное — минимум примеров, все устаревшие, все обросло кучей своих (опять же устаревших) API (да, дропбокс и гугл, я о вас, хоть и победил в конце концов).

Кто такой Андроид программист и чем он занимается?

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

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

Разработчик Android – это интересная техническая профессия, не лишенная при этом творческой составляющей.

Бонус: предотвращаем ошибки

Попробуйте оставить поле пустым и нажать на кнопку «Угадать». Приложение упадёт. Это происходит потому, что мы пытаемся конвертировать в число пустую строку:

val userInput = editTextUserNumber.text.toString()
userGuess = userInput.toInt()

Чтобы этого избежать, давайте добавим ещё одну проверку:

if (userInput.isBlank()) {
   textViewResult.text = "Введите число!"
} else {...

Тут мы проверяем, не пустует ли поле ввода. Функция isBlank возвращает нам true, если в поле ничего нет, и false, если число вписано. При пустом поле мы показываем текст «Введите число», в противном случае — продолжаем программу. 

Полный код будет выглядеть так:

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*
import kotlin.random.Random
 
class MainActivity  AppCompatActivity() {
 
    override fun onCreate(savedInstanceState Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
 
        var count = 
        var userGuess = -1
        var randomNumber = -1
        buttonStartGame.setOnClickListener {
            randomNumber = Random.nextInt(, 10)
            textViewResult.text = "Угадайте число от 0 до 9"//Мы же программисты!
        }
        buttonGuess.setOnClickListener {
            if (randomNumber < ) {
                randomNumber = Random.nextInt(, 10)
            }
            val userInput = editTextUserNumber.text.toString()
            if (userInput.isBlank()) {
                textViewResult.text = "Введите число!"
            } else {
                userGuess = userInput.toInt()
                if (count < 2) {
                    if (userGuess == randomNumber) {
                        textViewResult.text = "Угадали! Еще раз?"
                        count = 
                        userGuess = -1
                        randomNumber = -1
                    } else {
                        textViewResult.text = if (userGuess > randomNumber) "меньше!" else "больше!"
                        count++
                    }
                } else {
                    textViewResult.text = if (userGuess == randomNumber) "Угадали! Еще раз?" else "Не угадали :( Еще раз?"
                    count = 
                    userGuess = -1
                    randomNumber = -1
                }
            }
        }
    }
}

Нетология

Курс разработчика Android — это 6 месяцев интенсивного обучения у экспертов отрасли и работы над своим приложением. Вы изучите два самых популярных языка для работы с мобильной платформой номер один — Java и Kotlin. Решите 40 задач и сделаете готовое мобильное приложение в портфолио по итогам обучения.

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

Вы будете общаться с преподавателями и однокурсниками в онлайне 2-3 раза в неделю. Вебинары также будут доступны в записи и после обучения. После каждой лекции будете делать практические задания, а затем получать развёрнутую обратную связь. Так наполните портфолио.

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

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

Следующий этап — Kotlin

Kotlin максимально совместим с Java, и поэтому процесс его изучения будет для вас гораздо проще и быстрее.

Язык Kotlin считается молодым. Хотя он и существует с 2011 года, только в мае 2019 года Google объявила его приоритетным языком программирования для платформы Android. А учитывая, что именно Google занимается разработкой Android, после этого события популярность Kotlin среди разработчиков стремительно растёт. Следуя тенденциям, многие работодатели также начинают требовать знания Kotlin.

Помимо признания компанией Google, популярность Kotlin в мобильной разработке обусловлена удобством в использовании.

  • Язык обладает полной совместимостью с Java. В принципе, можно даже половину проекта написать на одном языке, а потом перейти на другой. Из-за перехода не теряется доступ к существующему коду, библиотекам и Android SDK.
  • Код на Kotlin гораздо короче и выразительнее, чем на Java. Всё, что можно написать на Java в 4–5 строчек, уместится в одну на Kotlin. Иногда разработчикам хочется ускориться и не быть такими многословными, как с Java.
  • Даже несмотря на то, что новые версии Java постоянно выходят, это не затрагивает мир Android-разработки, где всё застряло на уровне Java 6. И хотя существуют обходные пути для использования новых фич, в Kotlin новые фичи появляются чаще и не требуют от разработчика танцев с бубном.
  • Kotlin является детищем компании JetBrains, создателями Intellij Idea — IDE, лежащей в основе Android Studio. Благодаря этому Kotlin имеет отличную поддержку со стороны IDE: умные подсказки, рефакторинг кода, навигация по файлам и т. д.

Python

Да, энтузиастам удалось приспособить один из самых популярных языков программирования под Андроид разработку. Реализовано это с помощью Kivy и BeeWare:

  1. Kivy — это open source библиотека для создания кроссплатформенных приложений, в том числе под Android и iOS.
  2. BeeWare — это набор UI-инструментов для создания нативных Android-приложений.

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

Если вы знаете Python, попробовать определённо стоит.

Где учиться на Андроид программиста?

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

Курс Android-разработчик с нуля в Нетологии

Студенты осваивают два языка программирования – Java и Kotlin, решают около 40 задач и создают несколько собственных приложений, таким образом формируя портфолио для получения работы. Обучение ведется онлайн в течение 10 месяцев. Это позволяет получить качественную подготовку. Также Нетология содействует в трудоустройстве.

Курс Android-разработчик с нуля в Skillbox

Подходит новичкам. Включает детальное изучение языка Kotlin, баз данных SQL и освоение дополнительных навыков: дизайн приложений, анимация, отладка, тестирование, подготовка к релизу в Google Play. Отдельные уроки посвящены карьере в Android-разработке, как сделать резюме, искать заказы и многое другое. Обучение можно совмещать с работой.

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

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

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

Итак, в первую очередь нужно установить Android Studio. Эта платформа является официальной средой разработки (IDE) для Android. Функционирует она и на Windows, и на macOS, и на Linux. Сегодня это основной инструмент Android-разработчика, хотя, говоря по правде, разрабатывать приложения под Андроид можно и с помощью других сред.

В процессе установки Android Studio, если на вашем ПК не будут установлены Android SDK и прочие компоненты, программа скачает их автоматически.
Для справки: Android SDK представляет собой непосредственную среду программирования, куда входят необходимые библиотеки, скрипты, документация, исполняемые файлы и пр. При этом Android SDK выполняет компиляцию кода в файл, имеющий расширение .apk.

Также в комплекте с Android Studio устанавливается и эмулятор Android — очень полезный инструмент, позволяющий запускать и тестировать создаваемые вами приложения.

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

Мы же сфокусируем внимание на некоторых важных понятиях и правилах

Преподаватель

Андрей Сумин

О преподавателе курса

Android Middle Developer

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

Поступил в Санкт-Петербургский государственный университет (СПб ГУТ им. Бонч-Бруевича). В нем преподавались очень поверхностные знания в данной области, плюс сильно устаревшие. И я начал изучать программирование самостоятельно, и заметил одну неприятную вещь — фактически весь современный и лучший материал был на английском языке, так что перед тем как стать специалистом в создании приложений для Андройд мне пришлось выучить новый «человеческий» язык.
Пройдя несколько десятков курсов оффлайн и онлайн, проштудировав десятки книг на эту тему я, наконец, смог реализоваться в новой профессии.

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

Желаю вам успеха в освоении новой профессии, и до встречи на страницах курса.»

Немного истории: предсказание Джобса и революция мобильной разработки

Мобильная разработка в нынешнем её понимании возникла в нулевых, после выхода Java Micro Edition и WAP — урезанной версии доступа в интернет. Люди хотели развлекаться в сети, проверять электронную почту, общаться в ICQ — делать всё то же самое, что и на обычных компьютерах, но со своих мобильных телефонов.

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

В выступлении «Будущее уже не то, что раньше» Джобс сравнил распространение программ с музыкальными магазинами: человек приходит, берёт бесплатно демку софта, а потом оплачивает полную версию. Причём всё это удалённо, через телефонную линию с помощью номера банковской карты. «Я пока не знаю, как мы это сделаем, но нам это определённо нужно», — закончил он описание будущего AppStore, который появился только через 25 лет.

Первое время рынок мобильной разработки развивался слабо, но Apple и Google постепенно изменили ситуацию:

  • 2007 год — вышел первый iPhone;
  • 10 июля 2008 года открылся AppStore;
  • 9 месяцев спустя — 1 млрд скачиваний из AppStore;
  • 2008 год — появился первый смартфон под Android (через год после iPhone);
  • 22 октября 2008 года Google запустил Android Market;
  • 2010 год — миллиард скачиваний из Android Market.

Дополнительные компоненты

Окно с вкладками

Следующая остановка — окно с вкладками. При помощи нехитрого TabView можно разместить несколько активити на одном экране.

Вывод объектов-структур: Fragment и таблица

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

А вот так таблицей

Жизненный цикл Activity

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

Это же касается и OnTouchListener’ов, и onTextChanged.

Лаконичность — важное преимущество

Kotlin позволяет писать те же вещи, что и на Java, но обходиться значительно меньшим количеством кода. Например:

public class Person {
   private String firstName;
   private String lastName;
   private int age;
 
   public Person(String firstName, String lastName, int age) {
       this.firstName = firstName;
       this.lastName = lastName;
       this.age = age;
   }
 
   public String getFirstName() {
       return firstName;
   }
 
   public String getLastName() {
       return lastName;
   }
 
   public int getAge() {
       return age;
   }
}

Это простой класс для описания человека (имя, фамилия, возраст), который используется в Java для представления простого объекта. Теперь то же, только на Kotlin:

data class Person(val firstName String, val lastName String, val age Int)

Впечатляет, не правда ли? 

Пример разработки простой 2D-игрушки Андроид

Наша игра Android Studio развивается по известному сюжету. Пользователь управляет космическим кораблем, уворачивающимся от метеоритов (астероидов). Последние падают с верхней части экрана, корабль – движется внизу вправо или влево, в зависимости от решений участника. При столкновении аппарата с космическим объектом объявляется Game Over.

Начнем с открытия проекта. Для этого последовательно выберем в меню программы File, New, New Project. Придумываем проекту название, вводим домен и место, где будет храниться папка. Окно, появившееся после нажатия Next, лучше оставить без изменений. В следующем выбираем Empty Activity и движемся дальше. Кликнув по клавише Finish, мы получим готовый проект.

Следующим шагом станет скачивание необходимых картинок и копирование их в папку drawable. Это изображения корабля и метеоров. После этого нужно создать layout. Открываем Text в activity_main.xml и вставляем следующий код:

Код для layout

MainActivity, GameView, SpaceBody

Для редактирования класса MainActivity меняем определение, придав ему следующий вид: public class MainActivity extends AppCompatActivity implements View.OnTouchListener {. После этого нужно задать перемены для нажатия левой (public static boolean isLeftPressed = false) и правой (public static boolean isRightPressed = false) кнопок. Следующие действия мы расписывать не будем. В итоге MainActivity должен принять следующий вид:

Код для MainActivity

Разобравшись с классом MainActivity, переходим к GameView. В определение добавляем extends SurfaceView implements Runnable. Теперь нужно задать разрешение. У современных гаджетов разные параметры. Дисплей старого мобильника не может сравниться с новым большим планшетом.

Чтобы добиться одинакового изображения на любом устройстве, поделим монитор на одинаковые «клетки» 20х28 (первый показатель – горизонталь). Если эти части будут распределены неравномерно, картинка получится сжатой или растянутой. Задаем переменные:

Переменные для «уравнивания» графики

Для метода run() устанавливается бесконечный цикл, стартующий с update(). Задачей последнего является вычисление новых координат космического корабля. По окончании расчетов на экране будет сформирован сам аппарат (draw()). Control() завершает цикл, обеспечивая паузу на 17 миллисекунд. Затем снова запускается run(). Выглядеть это будет так:

Бесконечный цикл для run()

Чтобы появился сам корабль и астероиды, нужен родительский class SpaceBody. Зададим переменные и методы:

Код для родительского класса SpaceBody

Теперь отдельный класс Ship для корабля:

Код космического корабля

После этого останется произвести компиляцию и запуск программы. На дисплее Android Studio должен возникнуть корабль, который можно кнопками перемещать вправо и влево. Следующим шагом станет добавление астероидов. Для этого разработаем class Asteroid, тоже являющийся дочерним для SpaceBody. Зададим переменные:

Код для метеоров

Суть в том, чтобы астероиды произвольно возникали в разных точках «потолка» экрана и двигались с непредсказуемой скоростью. Мы задали код, определяющий столкновение метеоров с кораблем. Добавим астероиды в GameView:

Вписываем астероиды в GameView

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

Импорт файлов

В разработке приложения под Android важна интеграция с другими ресурсами: изображения, кастомные шрифты, звуки, видео и пр. Эти ресурсы импортируются в Android Studio и помещаются в соответствующие папки, что позволяет операционной системе подбирать корректные ресурсы для приложения. Для нашего приложения Fortune Ball понадобится импорт изображений в папки drawable. В этих папках могут содержаться изображения или специальные файлы XML drawables (т. е. вы можете рисовать формы с помощью XML-кода и использовать их в своих макетах).

В Android Studio перейдите из Android в Project

Откройте папку res (app > src > main). Клик правой кнопки мыши по папке res, выберите New > Android resource directory.

Появится окно под названием New Resource Directory.

Из выпадающего списка Resource type выберите опцию drawable. В списке Available qualifiers выберите Density, затем кликните кнопку, которая выделена на скриншоте.

В следующем окне выберите XX-High Density из списка Density. Кликните OK.

Повторите все, чтобы создать папки drawable-xhdpi, drawable-hdpi и drawable-mdpi. Выберите X-High, high (высокую) и medium (среднюю) плотность соответственно из списка Density.

Каждая папка, у которой есть определитель плотности  (i.e. xxhdpi, xhdpi, hdpi), содержит изображения, которые соотносятся с определенной плотностью или разрешением. К примеру, папка drawable-xxhdpi содержит изображение высокой плотности, это означает, что Android-устройство с экраном высокого разрешения извлечет изображение из этой папки. Изображение будет хорошо смотреться на всех устройствах Android, независимо от качества экрана. Больше информации о плотности экранов содержится в документации Android.

Создав все «рисованные» папки, вы можете вернуться к нераспакованному контенту в папке и скопировать (cmd + C) изображение из каждой папки и поместить (cmd + V) в соответствующую папку Android Studio.

Поместив файлы, вы увидите окно Copy. Выберите OK.

Создание приложения для андроид — построение и тестирование

В меню «Tools» перейдите к Android- AVD Manager. Этот инструмент отображает список текущих настроенных виртуальных Android-устройств. У вас будет одно устройство, настроенное по умолчанию, возможно, Nexus 5. Нажмите на значок воспроизведения (треугольник) в столбце «actions». Это запустит эмулятор.

В зависимости от производительности вашего ПК и объема выделенной памяти запуск эмулятора может занять несколько минут. После того, как эмулятор будет запущен, перейдите в меню «Tools» и нажмите «Run ‘app». Приложение будет скомпилировано и отправлено в эмулятор. Во время этого Android Studio спросит вас, какой эмулятор использовать. Вы увидите в списке свой текущий эмулятор. Это должна быть опция по умолчанию, поэтому просто нажмите «OK»:

Tap me!

Начало работы в Android Studio

Запустите Android Studio, в окне Android Studio Setup Wizard выберите Start a new Android Studio project (начать новый проект).

В окне Create New Project выберите Application Name (название приложения) как Fortune ball («Шар фортуны»), введите домен компании; в поле Project location выберите место в котором приложение будет сохранено. Кликните Next.

Перед вами окно Target Android Devices. Выберите Phone and Tablet. В поле Minimum SDK укажите API 15. Нажмите Next.

В окне Add an activity to Mobile выберите Basic Activity. Оцените все опции, в этом окне представлен обзор доступных макетов.

Кликните Next.

В окне Customize the Activity, скриншот которого размещен ниже, вы сможете изменить Activity Name (название активности), Layout Name (название макета), Title (общее название) и Menu Resource Name (название меню ресурсов). Оставьте значения по умолчанию и кликните Finish.

Через несколько секунд появится следующее окно:

На вашем устройстве или эмуляторе высветится такое же окно. Эмулятор функционирует как устройство, загрузка займет определенное время.

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector