Настоящий курс представляет собой продолжение курса «Разработка приложений для Android (базовый уровень)» и состоит в детальном рассмотрении прикладных аспектов проектирования и реализации приложений для мобильных устройств, работающих под управлением операционной системы Android.
Курс будет полезен для программистов, специализирующихся в области разработки приложений для мобильных устройств (планшетов и смартфонов), желающих повысить свой профессиональный уровень.
Для успешного похождения данного курса слушатель должен обладать следующими знаниями и умениями:
-
иметь уверенное знание синтаксиса языка программирования Java;
-
иметь представление об особенностях разработки программного обеспечения для портативных вычислительных устройств;
-
иметь представление об особенностях пользовательского интерфейса портативных устройств;
-
быть знакомым с архитектурой операционной системы Android;
-
владеть представлением о жизненном цикле приложения в операционной системе android и жизненных циклах его отдельных компонент;
-
знать особенности организации ресурсов android-приложения;
-
уметь создавать пользовательский интерфейс с использованием стандартных элементов управления;
-
знать основные подходы к организации хранения данных в android-приложении;
-
уметь пользоваться поставщиками данных;
-
владеть представлением о подсистеме уведомлений операционной системы android, а также уметь создавать простейшие уведомления;
-
владеть представлением о намерениях (Intents).
В результате освоения курса слушатель будет знать:
-
Средства и методы организации исполнения фоновых процессов
-
Расширенные средства организации пользовательского интерфейса и структуры приложения для портативного устройства. В том числе: использование фрагментов, создание собственных вариантов разметки интерфейса, использование единого навигационного меню приложения
-
Средства и методы организации исполнения вычислительно-ёмких процедур
-
Особенности локализации и глобализации приложений для операционной системы Android
-
Особенности получения данных с сенсоров портативных устройств в операционной системе Android
-
Особенности связанные с воспроизведением мультимедиа на портативных устройствах
В результате обучения слушатель будет уметь:
-
Использовать средства библиотеки обратной совместимости
-
Создавать собственные варианты разметки пользовательского интерфейса
-
Использовать фрагменты
-
Менять поведение стандартных библиотечных классов
-
Организовывать выполнение параллельных задач
-
Запускать сервисы и управлять их исполнением
-
Использовать анимации
-
Создавать собственные анимации и применять их к элементам пользовательского интерфейса
-
Воспроизводить звук и видео
-
Записывать звук с микрофона портативного устройства и получать изображение с камеры
-
Получать и использовать данные сенсоров портативного устройства
-
Производить определение местоположения устройства и встраивать карты Google в приложение
-
Выполнять локализацию приложения и учитывать локализацию при отображении данных
Модуль 1. Расширения Android SDK
-
Библиотека обратной совместимости (Android Support Library)
-
Драйвер USB (Universal Serial Bus Hub)
-
Сервисы Google Play
Модуль 2. Ресурсы. Локализация и глобализация
-
Ресурсы приложения
-
Стили и темы
-
Локализация
-
Глобализация
Модуль 3. Класс приложения
-
Назначение класса приложения
-
Унификация бизнес-логики
-
Обмен данными между активностями
Модуль 4. Процессы и потоки
-
Потоки (Thread)
-
Класс AsyncTask
-
Загрузчики (Loaders)
-
Метод runOnUIThread
Модуль 5. Сервисы
-
Фоновые сервисы
-
Способы запуска фоновых сервисов
-
Сервисы «переднего плана» и системный лоток
-
Жизненный цикл сервиса
-
Роль уведомлений в жизненном цикле сервисов
-
Методы, которые следует знать
Модуль 6. Фрагменты и Navigation Drawer
-
Подходы к организации интерфейса
-
Фрагменты их роль и значение
-
Пользовательские элементы управления и фрагменты
-
Фрагменты и повторно используемый код
-
Жизненный цикл фрагмента и его место в жизненном цикле активности
-
Запуск фрагмента и управление фрагментами
-
Карты, MapFragment и SupportMapFragment
-
Единое навигационное меню приложения (Navigation Drawer)
Модуль 7. Пользовательская разметка (Custom Layout)
-
Базовый класс ViewGroup
-
Метод onMeasure
-
Метод onLayout
-
Метод onSizeChanged
-
Создание разметки при помощи адаптера
Модуль 8. Анимации
-
Анимация свойства
-
Анимация представлений
-
Покадровая анимация
Модуль 9. Мультимедиа
-
Воспроизведение. Классы MediaPlayer и AudioManager
-
Захват звука с микрофона
-
Камера
Модуль 10. Broadcast ресиверы
-
Системные уведомления
-
Ресиверы и получения уведомлений о системных событиях
-
Декларативная регистрация ресивера
-
Регистрация ресивера непосредственно в коде
Модуль 11. Сенсоры и геолокация
-
Сенсоры мобильного устройства
-
Получение данных с сенсоров
-
Мониторинг состояния сенсоров
-
Геолокация
Модуль 12. Исполнение вычислительно-ёмких процедур
-
NDK (Native Development Kit)
-
JNI (Java Native Interface)
-
RenderScript
-
Расширенный RenderScript
Модуль 13. Исполнение кода по расписанию
-
Класс AlarmManager
-
Класс AlarmClock
-
Класс Timer
-
Класс Handler