Рассмотрены все основные аспекты создания приложений для платформы Android 9 (API 28): установка необходимого программного обеспечения, использо вание эмулятора Android, создание интерфейса пользователя, работа с графикой, воспроизведение звука и видео, методы хранения данных (в том числе СУБД SQLite), взаимодействие с аппаратными средствами мобильного устройства, от ладка приложений и их публикация в магазине Google Play. Особое внимание уделено взаимодействию с аппаратными средствами смарт фона. Показано, как получить информацию об устройстве и определить его со стояние, использовать его датчики (акселерометр, датчик света, датчик температу ры, датчик давления), камеру, Bluetooth-aдanтep. Приведены решения для различ ных нештатных ситуаций (отказ эмулятора, проблема с установкой программного обеспечения и т. д.), что поможет начинающему программисту. В 3-м издании описано создание 64-разрядных приложений для Android, рас смотрены изменения в интерфейсе среды разработки и новый API. ISBN 978-5-9775-6587-5 Для программистов Введение Читателям книги «Программирование для Android 5. Самоучитель» Как читать эту книгу? Вкратце об Android Выбор Android-устройства Процессор Общие сведения Подробнее об ARM-процессорах Выводы Память Дисплей Видеоускоритель Архитектура Android Google Play ЧАСТЬ I. ПОДГОТОВКА К РАБОТЕ Глава 1. Установка необходимого программного обеспечения 1.1. Что нужно для создания Android-приложения? 1.2. Установка комплекта разработчика Java-приложений — Java Development Kit (JDK) 1.3. Установка среды разработки Android Studio 1.3.1. Уровни API 1.3.2. Состав Android SDK Глава 2. Первый проект, первое приложение и эмулятор Android 2.1. Создание нового проекта 2.2. Структура приложения 2.3. Основное окно Android Studio 2.4. Подготовка эмулятора Android 2.5. Запуск приложения 2.5.1. В эмуляторе 2.5.2. На реальном устройстве 2.6. Проблемы при запуске приложения 2.6.1. Нюансы запуска приложения в эмуляторе 2.6.2. Включение режима отладки по USB на реальном устройстве 2.7. Управление виртуальным устройством с помощью команды adb 2.8. Командная строка 2.8.1. Создание проекта из командной строки 2.8.2. Запуск проекта из командной строки 2.9. Создание снимка экрана виртуального устройства 2.10. Подробно о системных требованиях ЧАСТЬ II. БАЗОВОЕ ПРОГРАММИРОВАНИЕ ДЛЯ ANDROID Глава 3. Основы построения приложений 3.1. Структура Android-проекта 3.2. Компоненты Android-приложения 3.3. Процессы в ОС Android 3.4. Подробнее о файле AndroidManifest.xml 3.5. Разрешения Android-приложений Глава 4. Интерфейс пользователя 4.1. Разметка интерфейса 4.1.1. Редактор разметки 4.1.2. Разные типы разметки Разметка FrameLayout Разметка LinearLayout Разметка ТаЫеЬауоШ Разметка GridLayout Разметка RelativeLayout Разметка ConstraintLayout 4.2. Основные виджеты графического интерфейса 4.2.1. Текстовые поля 4.2.2. Кнопки Button — обычная кнопка RadioButton — зависимые переключатели CheckBox — независимые переключатели ToggleButton — кнопка включено/выключено ImageButton — кнопка с изображением 4.2.3. Индикатор ProgressBar 4.2.4. Средства отображения графики Глава 5. Уведомления, диалоговые окна и меню 5.1. Уведомления 5.1.1. Простое всплывающее уведомление 5.1.2. Уведомление в строке состояния 5.1.3. Каналы уведомлений в Android 9.0 5.1.4. Определение действия уведомления 5.1.5. Кнопки действия 5.1.6. Удаление собственных уведомлений 5.1.7. Звуковая, световая и вибросигнализация 5.1.8. Вывод длинного текста 5.2. Диалоговые окна 5.2.1. Диалоговое окно AlertDialog 5.2.2. DatePickerDialog: диалоговое окно выбора даты 5.2.3. TimePickerDialog: диалоговое окно выбора времени 5.3. Меню 5.3.1. Определение меню в XML-файле 5.3.2. Создание основного меню (меню параметров) 5.3.3. Создание контекстного меню 5.3.4. Создание всплывающего меню Глава 6. Двумерная графика 6.1. Класс Dr aw able 6.2. Класс TransitionDrawable: переход между изображениями 6.3. Класс ShapeDrawable Глава 7. Мультимедиа 7.1. Форматы мультимедиа, поддерживаемые ОС Android 7.2. Работа со звуком 7.2.1. Используем MediaPlayer 7.2.2. Использование MediaRecorder: запись звука 7.2.3. Использование AudioRecordnAudioTrack 7.3. Работаем с видео Глава 8. Доступ к данным 8.1. Методы доступа к данным 8.2. Работа с файловой системой 8.3. Работаем с настройками (предпочтениями) ЧАСТЬ III. ПОСТРОЕНИЕ СЛОЖНОГО ПРИЛОЖЕНИЯ Глава 9. Межпроцессное взаимодействие Android-приложений 9.1. Деятельности и намерения 9.2. Режимы запуска singlelnstance и singleTask 9.3. Сохранение и восстановление состояния деятельности 9.4. Передача данных между деятельностями Глава 10. Потоки, службы и широковещательные приемники 10.1. Потоки 10.1.1. Запуск потока 10.1.2. Установка приоритета потока 10.1.3. Отмена выполнения потока 10.1.4. Обработчики Runnable-объектов: класс Handler 10.2. Службы 10.3. Широковещательные приемники Глава 11. Аппаратные средства смартфона/планшета 11.1. Датчики смартфона 11.2. Работаем с камерой 11.3. Работаем с Bluetooth 11.4. Виброзвонок 11.5. Набор номера 11.6. Определение номера входящего звонка 11.7. Получение информации о смартфоне 11.8. Ориентация экрана Глава 12. Соединение с внешним миром 12.1. Отправка SMS 12.2. Работа с браузером Глава 13. База данных SQLite 13.1. Введение в базы данных для Android 13.2. Подготовка вспомогательного класса 13.3. Работа с базой данных 13.3.1. Создание базы данных 13.3.2. Вставка записей 13.3.3. Чтение данных Глава 14. Создание анимации 14.1. Анимация преобразований 14.2. Традиционная кадровая анимация ЧАСТЬ IV. ДОПОЛНИТЕЛЬНЫЕ МАТЕРИАЛЫ Глава 15. Арр Inventor — среда быстрой разработки приложений 15.1. Введение в Арр Inventor 15.2. Начало работы с Арр Inventor 15.3. Основной экран Арр Inventor 15.4. Проектирование приложения Глава 16. Отладка приложений 16.1. Используем Android Studio 16.1.1. Выбор конфигурации запуска 16.1.2. Запуск процесса отладки 16.1.3. Профайлинг 16.1.4. Исследуем файловую систему устройства 16.1.5. Утилита LogCat 16.2. Утилиты отладки из Android SDK 16.2.1. Android Debug Bridge 16.2.2. Системные утилиты отладки 16.2.3. Отладчик gdb и Android-приложения Глава 17. Распространение ваших программ через Google Play 17.1. Введение в Google Play л 17.2. Правила размещения приложений на Google Play 17.3. Теория и практика 17.4. Регистрация аккаунта разработчика 17.5. Подготовка приложения к продаже 17.5.1. Тестирования на разных устройствах 17.5.2. Поддержка другого размера экрана 17.5.3. Локализация 17.5.4. Значок приложения 17.5.5. Подготовка АРК-файла к загрузке Глава 18. Эмулятор Genymotion 18.1. Основные сведения о Genymotion 18.2. Создание виртуального устройства Вместо заключения Предметный указатель Рассмотрены все основные аспекты создания приложений для платформы Android 9 (api 28): установка необходимого программного обеспечения, использование эмулятора Android, создание интерфейса пользователя, работа с графикой, воспроизведение звука и видео, методы хранения данных (в том числе СУБД Sqlite), взаимодействие с аппаратными средствами мобильного устройства, отладка приложений и их публикация в магазине Google Play. Особое внимание уделено взаимодействию с аппаратными средствами смартфона. Показано, как получить информацию об устройстве и определить его состояние, использовать его датчики (акселерометр, датчик света, датчик температуры, датчик давления), камеру, Bluetooth-адаптер. Приведены решения для различных нештатных ситуаций (отказ эмулятора, проблема с установкой программного обеспечения и т. д.), что поможет начинающему программисту. В 3-м издании описано создание 64-разрядных приложений для Android, рассмотрены изменения в интерфейсе среды разработки и новый Api.