Мнение одного из авторов курса: «Исходя из своего опыта, лучшей практикой является изучение всех требований не перед курсами, а параллельно с прохождением. Я начинал изучать Android с минимальными знаниями Java. Когда их откровенно не хватало, я просто откладывал Android, изучал соответствующую тему по Java, а потом возвращался к курсам по Android. Естественно, что это подойдёт не каждому, но вам важно знать, что необязательно изучать эти темы последовательно.» Подчёркиваем, что требования являются желательными. Во всех уроках будут ссылки на необходимые ресурсы, если вы не понимаете каких-то вещей. Так что можете смело приступать к обучению, но как только понимаете, что не хватает знаний из предыдущих курсов, то сразу переключайтесь на них.
Соглашения по формату, стилю написанию кода
В данном модуле мы пишем java код согласно последним рекомендациям от Google. Отличительные особенности от распространённого подхода:
имена полей класса не начинаются с префикса m.
имена статических полей не начинаются с префикса s.
Эти префиксы широко использовались долгое время, но в данный момент от них решили отказаться в связи с тем, что современные среды разработки (типа AndroidStudio) позволяют легко отличить разные виды переменных. Также следует отметить, что очень часто мы будем показывать только часть кода из java, xml файлов. В таких случаях будут оставляться соответствующие комментарии. Не добавляйте эти комментарии в свой код, т.к. они носят чисто информативный характер. Пример java кода:
UserInfoActivity.java
publicclassUserInfoActivityextendsAppCompatActivity {
// Остальной код выше не изменился@OverrideprotectedvoidonCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_user_info);
userImageView = findViewById(R.id.user_image_view);
}
}
Т.е в данной ситуации вам необходимо изменить метод onCreate, при этом не меняя весь остальной код в файле UserInfoActivity.java. Пример xml кода:
activity_user_info.xml
<RelativeLayout>
<!--Остальные элементы сверху не изменились -->
<TextViewandroid:id="@+id/followers_text_view"android:layout_below="@id/user_location_text_view"android:layout_toEndOf="@+id/following_text_view"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="10dp"android:layout_marginTop="5dp"android:text="Читатели"android:textSize="16sp"/>
</RelativeLayout>
В этом случае вы изменяете элемент followers_text_view, не изменяя остальные атрибуты.
Установка Android Studio
Единственная программа, необходимая для разработки мобильного приложения – Android studio. Всё, что необходимо сделать для установки:
После того, как запустим установку программы и нажмём кнопку Next, увидим окно выбора компонентов. Выбираем все, т.к. мы будем запускать наше приложение на эмуляторе:
Затем надо выбрать пути приложения и его название. Эти данные оставляем неизменными:
Далее ждём конца установки программы. После установки у вас появится окно, сигнализирующее об окончании установки приложения:
Нажимаем кнопку Finish (чекбокс о запуске приложения после нажатия кнопки стоит автоматически). После запуска программы видим окно, которое спрашивает, хотим ли мы импортировать настройки из предыдущей версии Android Studio. Если у вас до этого была установлена Android Studio, то нажимайте первый вариант, иначе – второй.
Появившийся экран с описанием сигнализирует о том, что у нас не установлено SDK, просто нажимаем Next:
Далее нам необходимо выбрать тип установки. Выбираем Standard:
Затем появится окно выбора темы. В наших уроках мы будем использовать светлую тему Intellij. Если вы хотите, то тоже можете выбрать эту тему на этом этапе или поменять её в любое другое время. Выбираем любую из двух тем и нажимаем Next.
В появившемся окне отобразятся части SDK. SDK(Software development kit). SDK – набор библиотек для разработки приложений для операционной системы Android. Без установки SDK мы не сможем начать работу, т.к. не будем иметь доступ к базовым классам системы Android. Также отображается путь, куда будет установлено SDK. Ничего не меняем, нажимаем Next. В появившемся окне о подтверждении скачивания SDK нажимаем Finish:
Подтверждаем лицензионное соглашение, выбрав вариант Accept и нажимая кнопку Next.
Дожидаемся загрузки SDK и компонентов и нажимаем кнопку Finish. Перед нами появится стартовая панель приложения.
Создание пустого проекта
Для начала создадим новый проект. Для этого нажимаем на пункт Start a new Android Studio project:
Сразу после этого у нас появилось с окно с информацией о приложении:
Нам надо заполнить 3 поля:
Application name – имя приложения. Назовём наше первое приложение HelloWorld.
Company domain – пакет приложения. Общепринятый формат записи представляется в виде com.dev.colibri. Обычно смысловая нагрузка имени пакета связана с именем компании, разрабатывающей приложение. Если вы не представляете никакую компанию, то никаких ограничений с точки зрения языка нет. Пакет используется для идентификации приложения на устройстве, также при загрузке в Play Market. Т.е. двух приложений с одним и тем же пакетом на Android устройстве и в Play Market быть не может. Ещё стоит помнить, что указав однажды одно имя пакета при публикации приложения в Play Market изменить его уже не представится возможным.
Project location – путь вашего проекта. Обычно создают отдельную папку для Android проектов, но вы можете сделать по-своему.
Отлично, нажимаем кнопку Next. Видимо окно следующего вида:
Здесь нам надо выбрать, какие устройства(планшеты, телефоны, телевизоры и т.д.) наше приложение будет поддерживать. Идеальный вариант – поддержка 100% всех устройств. Но это накладывает определённые ограничения на ваши действия и создаёт трудности при написании кода. Мы будем поддерживать только телефоны и планшеты (Phone and Tablet), начиная с 21 версии. Для этого надо выбрать из выпадающего списка вариант API 21: Android 5.0(Lollipop). Отлично, нажимаем кнопку Next. Появляется форма, предлагающая выбрать шаблон экрана:
По умолчанию стоит вариант Empty Activity. Нам он подходит, поэтому нажимаем кнопку Next. Теперь нам осталось указать имя для нашей Activity и нашего layout файла. Оставляем имена, которые рекомендуются по умолчанию:
Следующим действием нажимаем кнопку Finish и ждём, пока наш проект соберётся.
Когда проект запустится, возможно, появится ошибка, которая говорит о том, что у нас не установлен Android SDK. Для того, чтобы её исправить необходимо кликнуть по надписи в ошибке Install missing platform and sync project (она подсвечивается синим цветом). Если похожая ошибка появится для каких-либо библиотек, также установите их.
После загрузки наш проект наконец-то собрался. Это может занять какое-то время в первый раз (до 10 мин, возможно). Давайте запустим проект. Для этого нажмём сочетание клавиш shift + F10, или на иконку запуска:
В появившемся окне выбора устройств видим, что нет доступных устройств. Давайте нажмём кнопку Create New Virtual Device:
Студия предложит выбрать устройство. По умолчанию выбран Nexus 5X. Он нам подойдёт, поэтому его и скачиваем:
Далее нам необходимо нажать на Download в строке Pie:
Когда мы скачали версию эмулятора, необходимо выбрать его и нажать кнопку Next:
Далее появится окно детальной информации. В нём ничего не меняем:
Нажимаем кнопку Finish. И, наконец-то, перед нами появилось готовое устройство:
Давайте запустим приложение, выбрав только что добавленный нами эмулятор. Первая загрузка может длиться достаточно долго. Это зависит от мощности компьютера. У нас она длилась 4 минуты 10 секунд. Но это только первая загрузка. Остальные будут гораздо быстрее. После запуска видим результат на нашем эмуляторе.
Поздравляем! Вы только что прошли самую сложную часть: установили и подготовили всё необходимое для работы. Ссылки:
Сайт использует cookie-файлы для того, чтобы вам было удобнее им пользоваться. Для
продолжения работы с сайтом, вам необходимо принять использование cookie-файлов.
Структура урока:
Требования к курсу
Желательным требованием к прохождению этого курса является:
Мнение одного из авторов курса: «Исходя из своего опыта, лучшей практикой является изучение всех требований не перед курсами, а параллельно с прохождением. Я начинал изучать
Android
с минимальными знаниямиJava
. Когда их откровенно не хватало, я просто откладывалAndroid
, изучал соответствующую тему поJava
, а потом возвращался к курсам поAndroid
. Естественно, что это подойдёт не каждому, но вам важно знать, что необязательно изучать эти темы последовательно.» Подчёркиваем, что требования являются желательными. Во всех уроках будут ссылки на необходимые ресурсы, если вы не понимаете каких-то вещей. Так что можете смело приступать к обучению, но как только понимаете, что не хватает знаний из предыдущих курсов, то сразу переключайтесь на них.Соглашения по формату, стилю написанию кода
В данном модуле мы пишем
java
код согласно последним рекомендациям от Google. Отличительные особенности от распространённого подхода:m
.s
.Эти префиксы широко использовались долгое время, но в данный момент от них решили отказаться в связи с тем, что современные среды разработки (типа
AndroidStudio
) позволяют легко отличить разные виды переменных. Также следует отметить, что очень часто мы будем показывать только часть кода изjava
,xml
файлов. В таких случаях будут оставляться соответствующие комментарии. Не добавляйте эти комментарии в свой код, т.к. они носят чисто информативный характер. Примерjava
кода:UserInfoActivity.java
Т.е в данной ситуации вам необходимо изменить метод
onCreate
, при этом не меняя весь остальной код в файлеUserInfoActivity.java
. Примерxml
кода:activity_user_info.xml
В этом случае вы изменяете элемент
followers_text_view
, не изменяя остальные атрибуты.Установка Android Studio
Единственная программа, необходимая для разработки мобильного приложения –
Android studio
. Всё, что необходимо сделать для установки:AndroidStudio
с официального сайта.После того, как запустим установку программы и нажмём кнопку
Next
, увидим окно выбора компонентов. Выбираем все, т.к. мы будем запускать наше приложение на эмуляторе:Затем надо выбрать пути приложения и его название. Эти данные оставляем неизменными:
Далее ждём конца установки программы. После установки у вас появится окно, сигнализирующее об окончании установки приложения:
Нажимаем кнопку
Finish
(чекбокс о запуске приложения после нажатия кнопки стоит автоматически). После запуска программы видим окно, которое спрашивает, хотим ли мы импортировать настройки из предыдущей версииAndroid Studio
. Если у вас до этого была установленаAndroid Studio
, то нажимайте первый вариант, иначе – второй.Появившийся экран с описанием сигнализирует о том, что у нас не установлено
SDK
, просто нажимаемNext
:Далее нам необходимо выбрать тип установки. Выбираем
Standard
:Затем появится окно выбора темы. В наших уроках мы будем использовать светлую тему
Intellij
. Если вы хотите, то тоже можете выбрать эту тему на этом этапе или поменять её в любое другое время. Выбираем любую из двух тем и нажимаемNext
.В появившемся окне отобразятся части
SDK
.SDK
(Software development kit).SDK
– набор библиотек для разработки приложений для операционной системыAndroid
. Без установкиSDK
мы не сможем начать работу, т.к. не будем иметь доступ к базовым классам системыAndroid
. Также отображается путь, куда будет установленоSDK
. Ничего не меняем, нажимаемNext
. В появившемся окне о подтверждении скачиванияSDK
нажимаемFinish
:Подтверждаем лицензионное соглашение, выбрав вариант
Accept
и нажимая кнопкуNext
.Дожидаемся загрузки
SDK
и компонентов и нажимаем кнопкуFinish
. Перед нами появится стартовая панель приложения.Создание пустого проекта
Для начала создадим новый проект. Для этого нажимаем на пункт
Start a new Android Studio project
:Сразу после этого у нас появилось с окно с информацией о приложении:
Нам надо заполнить 3 поля:
Application name
– имя приложения. Назовём наше первое приложениеHelloWorld
.Company domain
– пакет приложения. Общепринятый формат записи представляется в видеcom.dev.colibri
. Обычно смысловая нагрузка имени пакета связана с именем компании, разрабатывающей приложение. Если вы не представляете никакую компанию, то никаких ограничений с точки зрения языка нет. Пакет используется для идентификации приложения на устройстве, также при загрузке вPlay Market
. Т.е. двух приложений с одним и тем же пакетом наAndroid
устройстве и вPlay Market
быть не может. Ещё стоит помнить, что указав однажды одно имя пакета при публикации приложения вPlay Market
изменить его уже не представится возможным.Project location
– путь вашего проекта. Обычно создают отдельную папку дляAndroid
проектов, но вы можете сделать по-своему.Отлично, нажимаем кнопку
Next
. Видимо окно следующего вида:Здесь нам надо выбрать, какие устройства(планшеты, телефоны, телевизоры и т.д.) наше приложение будет поддерживать. Идеальный вариант – поддержка 100% всех устройств. Но это накладывает определённые ограничения на ваши действия и создаёт трудности при написании кода. Мы будем поддерживать только телефоны и планшеты (
Phone and Tablet
), начиная с 21 версии. Для этого надо выбрать из выпадающего списка вариантAPI 21: Android 5.0(Lollipop)
. Отлично, нажимаем кнопкуNext
. Появляется форма, предлагающая выбрать шаблон экрана:По умолчанию стоит вариант
Empty Activity
. Нам он подходит, поэтому нажимаем кнопкуNext
. Теперь нам осталось указать имя для нашейActivity
и нашегоlayout
файла. Оставляем имена, которые рекомендуются по умолчанию:Следующим действием нажимаем кнопку
Finish
и ждём, пока наш проект соберётся.После загрузки наш проект наконец-то собрался. Это может занять какое-то время в первый раз (до 10 мин, возможно). Давайте запустим проект. Для этого нажмём сочетание клавиш
shift + F10
, или на иконку запуска:В появившемся окне выбора устройств видим, что нет доступных устройств. Давайте нажмём кнопку
Create New Virtual Device
:Студия предложит выбрать устройство. По умолчанию выбран
Nexus 5X
. Он нам подойдёт, поэтому его и скачиваем:Далее нам необходимо нажать на
Download
в строкеPie
:Когда мы скачали версию эмулятора, необходимо выбрать его и нажать кнопку
Next
:Далее появится окно детальной информации. В нём ничего не меняем:
Нажимаем кнопку
Finish
. И, наконец-то, перед нами появилось готовое устройство:Давайте запустим приложение, выбрав только что добавленный нами эмулятор. Первая загрузка может длиться достаточно долго. Это зависит от мощности компьютера. У нас она длилась
4 минуты 10 секунд
. Но это только первая загрузка. Остальные будут гораздо быстрее. После запуска видим результат на нашем эмуляторе.Поздравляем! Вы только что прошли самую сложную часть: установили и подготовили всё необходимое для работы. Ссылки:
Полезные материалы: