Теория - OxforDroid/My-google-android-university GitHub Wiki

Часть 1. Обзор платформы Android

  • Что такое Android?
  • История возникновения
  • Преимущества Android
  • Этапы создания приложений, от идеи до GooglePlay
  • Архитектура Android
  • Установка и настройка необходимых инструментов
  • Особенности платформы Android
  • Основные компоненты Android
  • Безопасность и полномочия (Permissions)
  • Установка и настройка компонентов среды разработки
  • Создание первого приложения под Android

Часть 2. Активности и ресурсы

  • Активности (Activity) в Android
  • Создание Активности
  • Жизненный цикл Активности
  • Стеки Активностей
  • Состояния Активностей
  • Отслеживание изменений состояния Активности
  • Ресурсы
  • Отделение ресурсов от кода программы
  • Простые значения
  • Визуальные стили и темы
  • Изображения
  • Разметка
  • Анимация
  • Локализация приложения

Часть 3. Приложения и пользовательский интерфейс

  • Использование внешних ресурсов в коде приложения(cтроки, размеры, цвета, массивы)
  • Использование ресурсов внутри ресурсов
  • Локализация приложения с помощью внешних ресурсов
  • Класс Application
  • Обработка событий жизненного цикла приложения
  • Понятие контекста
  • Представления (View)
  • Разметка (Layout)
  • Основные характеристики экранов
  • Пользовательский интерфейс
  • Различия в проектировании UI для телефонов и планшетов
  • Основные характеристики экранов
  • Меню и диалоги в Android
  • ActionBar, меню опций и контекстное меню элементов
  • Создание вложенных меню
  • Принципы построения диалоговых окон в Android
  • Класс DialogBuilder
  • Диалоги AlertDialog, TimePickerDialog и DatePickerDialog
  • Создание собственного диалогового окна
  • Обзор стандартных элементов UI в Android
  • кнопки

Часть 4. Намерения, меню и работа с данными

  • Адаптеры в Android
  • Использование Адаптеров для привязки данных
  • Намерения в Android
  • Использование Намерений для запуска Активностей
  • Неявные намерения
  • Сохранение состояния и настроек приложения
  • Общие Настройки (Shared Preferences)
  • Работа с файлами
  • Использование статических файлов как ресурсов
  • Меню в Android
  • Дочерние и контекстные меню
  • Описание меню с помощью XML

Часть 5. СУБД, контент-провайдеры и использование сетевых сервисов

  • Работа с базами данных в Android
  • Курсоры (Cursor) и ContentValues
  • Работа с СУБД SQLite
  • Работа с СУБД без адаптера
  • Особенности работы с БД в Android
  • Выполнение запросов для доступа к данным
  • Изменение данных в БД
  • Использование SimpleCursorAdapter
  • Контент-провайдеры
  • Использование контент-провайдеров
  • Создание контент-провайдеров
  • Использование интернет-сервисов

Часть 6. Диалоги в Android

  • Виды Диалогов
  • Рекомендации по дизайну Диалогов
  • Создание и удаление Диалогов
  • Обработка событий

Часть 7. Широковещательные приемники (Broadcast Receivers)

  • Применение Широковещательных Приемников
  • Жизненный цикл Приемника
  • Регистрация Приемника
  • Использование Ordered Broadcast
  • Использование PendingIntent

Часть 8. Извещения (Notifications) в Android

  • Взаимодействие с Извещениями
  • Управление Извещениями
  • Создание Извещений
  • Обновление Извещений

Часть 9. Фрагменты (Fragments)

  • Создание Фрагментов
  • Добавление пользовательского интерфейса
  • Добавление фрагментов к Активностям
  • Управление Фрагментами
  • Транзакции с Фрагментами
  • Взаимодействие Фрагментов и Активностей
  • Жизненный цикл Фрагментов

Часть 10. Процессы и потоки (Threads)

  • Жизненный цикл процесса
  • Потоки
  • Фоновые потоки
  • Использование AsyncTask

Часть 11. Сервисы (Services)

  • Описание Сервисов в Манифесте приложения
  • Запуск Сервисов
  • Остановка Сервисов
  • Связанные Сервисы
  • Сервисы и Извещения
  • Сервисы переднего плана (Foreground Services)
  • Жизненный цикл Сервисов

Часть 12. Виджеты (Widgets)

  • Описание Виджетов в Манифесте приложения
  • Создание разметки Виджета
  • Класс AppWidgetProvider
  • Создание Виджета
  • Использование Конфигурационной Активности
  • Использование Preview Image
  • Обновление Виджетов

Часть 13. Работа картами SD и внутренним хранилищем устройства

  • Проверка доступности носителя
  • Доступ к файлам
  • Совместно используемые файлы и стандартные каталоги
  • Файлы кэша приложений

Часть 14. Загрузчики (Loaders)

  • Обзор API Загрузчиков
  • Применение Загрузчиков
  • Запуск и перезапуск Загрузчиков
  • Использование LoaderManager
  • Использование LoaderCursor

Часть 15. Беспроводные соединения

  • Проверка сетевых соединений
  • Отслеживание состояния соединений
  • ConnectivityManager и NetworkInfo
  • Эффективное использование сетевых соединений

Часть 16. Использование AlarmManager и AlarmClock

  • Типы будильников в Android
  • Однократные и повторяющиеся события
  • Области применения AlarmManager и альтернативы (Timer и Handler)
  • Использование AlarmClock

Часть 17. Сенсоры в Android

  • Обзор сенсоров
  • Типы сенсоров и получение информации об их доступности
  • Sensor Framework
  • Мониторинг состояния сенсоров
  • Лучшие практики при работе с сенсорами

Часть 18. Телефония и SMS

  • Совершение звонков из приложения
  • Определение состояния и параметров телефона
  • Мониторинг состояния телефонного модуля
  • Использование SMS
  • Отправка SMS
  • Получение SMS

Часть 19. Собственные View

  • Использование Canvas
  • Использование SurfaceView
  • Использование Drawable
  • Shape Drawable и 2D графика
  • Модификация существующих View
  • Создание собственных View

Часть 20. Звук и камера в Android

  • Запись и воспроизведение звука
  • Основы работы с камерой в Android
  • Использование имеющихся приложений работы с камерой
  • Прямое управление камерой
  • Съемка и сохранение фото и видео

Часть 21. Публикация и реклама

Часть 22. Тестирование.

Часть 23. Мотивация.

Часть 24. Дизайн мобильных приложений

Часть 25. Удаленная работа.

Часть 22. Андроид Студио

  • Полезные настройки.