Теория - 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. Андроид Студио
- Полезные настройки.