Оглавление
Введение 9
На кого рассчитана эта книга 9
Краткое описание глав 10
Исходные коды примеров 13
Благодарности 14
ЧАСТЬ I. ОСНОВЫ ANDROID 15
Глава 1. Архитектура и базовые сведения о платформе Android 17
Архитектура Android 17
Уровень ядра 17
Уровень библиотек 18
Dalvik Virtual Machine 19
Уровень каркаса приложений 20
Уровень приложений 20
Как программировать под Android 20
Компоненты Android-приложения 21
Activity 21
Service 21
Broadcast Receiver 21
Content Provider 22
Intent 22
Резюме 22
Глава 2. Установка и настройка среды разработки 23
Создание среды разработки 23
Установка JDK 24
Установка Eclipse 24
Установка Android SDK 24
Установка Android Development Tools 26
Обзор Android SDK 28
Версии SDK и Android API Level 28
Инструменты для разработки и отладки приложений 29
Создание переменных окружения 30
Android Virtual Device 31
Резюме 35
Глава 3. Первое Android-приложение 37
Создание проекта в Eclipse 37
Структура проекта 42
Каталоги ресурсов 43
Подкаталог res/layout/ 43
Подкаталоги res/drawable/ 45
Подкаталог res/values/ 45
Файл R.java 46
Файл окна приложения FirstActivity.java 47
Файл AndroidManifest.xml 48
Общая структура манифеста 50
Структура элемента <аpplication> 53
Отладка Android-приложения 56
Настройка мобильного телефона для отладки приложения 57
Установка режима отладки на мобильном телефоне 58
Установка драйвера USB 58
Взаимодействие мобильного телефона с DDMS 59
Запуск приложения на мобильном устройстве 60
Резюме 61
ЧАСТЬ II. ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ 63
Глава 4. Компоновка элементов управления 65
Формирование графического интерфейса пользователя 65
Создание компоновки 67
XML-файл компоновки 67
Создание компоновки в Layout Editor 69
Типы компоновок 69
FrameLayout 70
LinearLayout 72
TableLayout 77
RelativeLayout 81
Отладка интерфейса с помощью инструмента Hierarchy Viewer 83
Резюме 86
Глава 5. Базовые виджеты 87
Текстовые поля 87
TextView 88
EditText 93
Полосы прокрутки 95
Отображение графики 98
Резюме 100
Глава 6. Кнопки и обработка событий 101
Обработка событий 101
Кнопки и флажки 102
Button 103
Оглавление 5
RadioButton и RadioGroup 111
CheckBox 113
ToggleButton 115
ImageButton 118
Закладки 120
Резюме 124
Глава 7. Индикаторы, слайдеры и компоненты отображения времени 125
Индикаторы и слайдеры 125
ProgressBar 126
Создание фоновых потоков 126
SeekBar 130
RatingBar 133
Компоненты для отображения времени 137
Chronometer 138
AnalogClock и DigitalClock 141
Резюме 142
Глава 8. Виджеты-списки и привязка данных 143
Адаптеры данных 143
Текстовые поля с автозаполнением 144
AutoCompleteTextView 144
MultiAutoCompleteTextView 147
Oтображениe текстовых данных в списках 149
ListView 150
Создание списка с заданной компоновкой 154
Spinner 158
GridView 160
Отображение графики в списках 164
Отображение графики в GridView 164
Gallery 168
SlidingDrawer 171
Резюме 176
Глава 9. Уведомления 177
Всплывающие уведомления 177
Создание собственных всплывающих уведомлений 180
Резюме 184
Глава 10. Диалоги 185
Типы диалогов 185
Создание диалоговых окон 186
AlertDialog 187
AlertDialog c кнопками 187
AlertDialog cо списком 191
AlertDialog c переключателями 193
AlertDialog c флажками 196
ProgressDialog 199
DatePickerDialog 203
TimePickerDialog 207
Создание собственных диалогов 210
Резюме 214
Глава 11. Меню 215
Меню выбора опций 215
Меню со значками 220
Расширенное меню 223
Контекстное меню 226
Подменю 230
Добавление флажков и переключателей в меню 233
Резюме 237
ЧАСТЬ III. КОМПОНЕНТЫ ANDROID-ПРИЛОЖЕНИЯ 239
Глава 12. Activity 241
Процессы в системе Android 241
Состояния Activity 243
Запуск Activity с использованием объектов Intent 245
Запуск Activity с помощью явного объекта Intent 245
Стек Activity 252
Вызов стандартных Activity из приложения 253
Обмен данными между Activity 258
Intent-фильтры и запуск заданий 271
Резюме 274
Глава 13. Service 275
Работа служб в Android 275
Создание службы 280
Вызов системных служб 282
Резюме 285
Глава 14. Broadcast Receiver 287
Класс BroadcastReceiver 287
Передача событий через объекты Intent 288
Прослушивание событий компонентом Broadcast Receiver 289
Пример приложения с Broadcast Receiver 290
Пример приложения-передатчика Intent 292
Broadcast Receiver для отслеживания системных событий 293
Резюме 297
Глава 15. Content Provider 299
База данных SQLite 299
Инструменты для работы с базами данных на Android-телефоне 299
Инструмент sqlite3 300
Использование инструментов сторонних разработчиков для работы с SQLite 301
Создание базы данных: класс SQLiteOpenHelper 302
Создание компонента Content Provider 310
Расширение класса ContentProvider 310
URI 312
Управление базой данных из приложения 313
Чтение данных 314
Добавление записей 315
Обновление записей 316
Удаление записей 316
Декларирование компонента Content Provider в файле манифеста приложения 317
Запросы к Content Provider 318
Чтение возвращаемых значений 318
Позиционирование курсора 319
Добавление записей 319
Изменение записи 320
Удаление записей 320
Клиентское приложение для работы с базой данных 321
Резюме 327
ЧАСТЬ IV. РАБОТА С ФАЙЛАМИ И РЕСУРСАМИ 329
Глава 16. Файловый ввод-вывод и сохранение пользовательских настроек 331
Чтение и запись файлов 331
Пользовательские настройки 336
Доступ к настройкам 338
CheckBoxPreference 339
EditTextPreference 345
ListPreference 347
RingtonePreference 349
PreferenceCategory 350
PreferenceScreen 352
Резюме 355
Глава 17. Ресурсы, активы и локализация приложений 357
Доступные типы ресурсов 357
Создание ресурсов 358
Ссылки на ресурсы 359
Использование ресурсов в коде программы 359
Загрузка простых типов из ресурсов 360
Загрузка файлов произвольного типа 364
Создание меню в XML 367
Загрузка XML-документов 371
Стили и темы 375
Стили 375
Темы 376
Определение собственных стилей и тем 377
Активы 379
Локализация приложений 383
Ресурсы, заданные по умолчанию 383
Создание локализованных ресурсов 383
Резюме 386
Глава 18. Графика 387
Объект Drawable 387
Создание объектов Drawable в коде программы 389
Класс TransitionDrawable 389
Класс ShapeDrawable 392
Рисование на канве 398
Резюме 404
Глава 19. Создание анимации 405
Tween Animation 405
Создание анимации в XML-файле 406
Элемент <set> 408
Элемент <alpha> 408
Элемент <scale> 408
Элемент <translate> 408
Элемент <rotate 409
Анимация для графических примитивов 409
Анимация для графических файлов 416
Анимация для группы объектов 419
Frame Animation 424
Создание анимации в XML 424
Создание анимации в коде программы 428
Резюме 430
Приложение. Описание компакт-диска и установка примеров 433
Описание компакт-диска 433
Установка примеров 433
Предметный указатель 437
Добавить комментарий