В книжке
Самоучитель. Программирование для Android. Колисниченко рассмотрены все основные аспекты создания приложений для платформы Android: инсталляция необходимого ПО (JDK, Eclipse и Android SDK), применение эмулятора Android, создание интерфейса пользователя, работа с графикой, воспроизведение звука и видео, методы хранения данных (в частности СУБД SQLITE), взаимодействие с аппаратными средствами смартфона, платформа Titanium Mobile, отладка приложений и их публикация в он-лайн-магазине Android Market. Особое внимание уделяется анализу и решению разных нештатных ситуаций, встречающихся на практике: отказ запуска эмулятора, отказ при загрузке созданного приложения, возможные трудности при установке платформы Titanium Mobile и др. Описано взаимодействие с аппаратными средствами смартфона (датчики, камера, виброзвонок, Bluetooth-адаптер и др.), получение информации о телефоне и его состоянии.
Оглавление книги
Самоучитель. Программирование для Android. Колисниченко
Введение 7
Как читать эту книгу 9
Часть I. Введение в Android
11
Глава 1. Знакомство с Android
13
1.1. Вкратце об Android 13
1.2. Модели устройств с поддержкой Android и выбор версии системы 14
1.3. Архитектура Android 19
1.4. Android Market 20
Глава 2. Среда разработки
22
2.1. Необходимое программное обеспечение 22
2.2. Установка JDK 24
2.3. Установка среды разработки Eclipse 26
2.4. Установка Android SDK 28
2.5. Подробно о составе Android SDK 37
2.6. Эмулятор Android Virtual Device 37
2.6.1. Создание AVD 37
2.6.2. Запуск эмулятора и проблемы при запуске 41
2.6.3. Комбинации клавиш эмулятора 45
Глава 3. Первое Android-приложение
47
3.1. Разработка приложения в Eclipse 47
3.2. Проблемы с запуском приложения или то, о чем не пишут в других книгах 53
3.3. Медленный запуск эмулятора 55
3.4. Создание снимка экрана виртуального устройства 57
Часть II. Базовое программирование для Android
59
Глава 4. Основы построения приложений
61
4.1. Структура Android-проекта 61
4.2. Компоненты Android-приложения 65
4.3. Процессы в ОС Android 66
4.4. Подробно о файле AndroidManifest.xml 68
Глава 5. Разработка интерфейса пользователя
72
5.1. Разметка интерфейса 72
5.1.1. Файл разметки и редактор разметки 72
5.1.2. Типы разметки 75
FrameLayout 75
LinearLayout 75
TableLayout 77
RelativeLayout 84
5.1.3. Исследование разметки с помощью Hierarchy Viewer 85
5.2. Основные виджеты графического интерфейса 87
5.2.1. Текстовые поля 87
5.2.2. Кнопки 93
Button — обычная кнопка 93
RadioButton — зависимые переключатели 98
CheckBox — независимые переключатели 100
ToggleButton — кнопка включено/выключено 100
ImageButton — кнопка с изображением 103
5.2.3. Индикатор ProgressBar 104
5.2.4. Средства отображения графики 109
5.2.5. Виджеты AnalogClock и DigitalClock 110
Глава 6. Уведомления, диалоговые окна и меню
112
6.1. Уведомления 112
6.2. Диалоговые окна 116
6.2.1. AlertDialog 116
6.2.2. DatePickerDialog 118
6.2.3. TimePickerDialog 121
6.3. Меню 124
6.3.1. Меню выбора опций 124
6.3.2. Меню со значками 128
6.3.3. Расширенное меню 128
6.3.4. Контекстное меню 131
6.3.5. Подменю 135
Глава 7. Графика
137
7.1. Класс Drawable 137
7.2. Класс TransitionDrawable 140
7.3. Класс ShapeDrawable 141
Глава 8. Мультимедиа
144
8.1. Поддерживаемые форматы 144
8.2. Работа с аудиозаписями 145
8.2.1. Воспроизведение звука с помощью MediaPlayer 145
8.2.2. Запись звука с помощью MediaRecorder 145
8.2.3. Использование AudioRecord/AudioTrack 146
8.3. Работаем с видеозаписями 152
Глава 9. Методы хранения данных
154
9.1. Три метода доступа к данным 154
9.2. Чтение и запись файлов 155
9.2.1. Текстовые файлы 155
9.2.2. Файлы изображений 157
9.3. Предпочтения: сохранение настроек приложения 158
Часть III. Профессиональное программирование
165
Глава 10. Деятельности и намерения. Передача данных между деятельностями
167
10.1. Еще раз о компонентах приложения 167
10.2. Однозадачный режим 169
10.3. Ориентация экрана 170
10.4. Сохранение и восстановление состояния деятельности 171
10.5. Передача данных между деятельностями 172
Глава 11. Потоки, службы и широковещательные приемники
174
11.1. Потоки 174
11.1.1. Запуск потока 174
11.1.2. Установка приоритета потока 175
11.1.3. Отмена выполнения потока 176
11.1.4. Обработчики Runnable-объектов: класс Handler 176
11.2. Службы 179
11.3. Широковещательные приемники 183
Глава 12. Создание анимации
186
12.1. Анимация преобразований 186
12.2. Традиционная кадровая анимация 189
Глава 13. База данных SQLite
192
13.1. Несколько слов о базах данных 192
13.2. Класс SQLiteOpenHelper 193
13.3. Разработка блокнота 195
Глава 14. Соединение с внешним миром
201
14.1. Отправка SMS 201
14.2. Работа с браузером 203
Глава 15. Titanium Mobile
205
15.1. Основные сведения о Titanium Mobile 205
15.2. Установка Titanium Studio 206
15.3. Создание первого RIA-приложения с помощью Titanium Studio 211
15.3.1. Создание проекта 211
15.3.2. Установка переменных окружения 215
15.3.3. Компилятор javac не найден 217
15.3.4. Ошибка Error generating R.java from manifest 218
15.3.5. Что дальше? 218
Глава 16. Взаимодействие с аппаратными средствами
219
16.1. Получение информации о телефоне 219
16.2. Прослушивание состояния телефона 222
16.3. Набор номера 224
16.4. Виброзвонок 225
16.5. Датчики мобильного телефона 225
16.6. Доступ к камере 227
16.7. Bluetooth 232
16.7.1. Включение Bluetooth-адаптера 233
16.7.2. Обнаружение устройств по соседству 233
16.7.3. Установка соединения с Bluetooth-устройством 234
16.8. Дополнительное оборудование виртуального устройства 236
Глава 17. Android Market
238
17.1. Введение в Android Market 238
17.2. Правила размещения приложений на Android Market 240
17.3. Регистрация аккаунта разработчика 242
17.4. Телефон для разработчика: Android Developer Phone 242
17.5. Подготовка приложений к продаже 244
17.5.1. Тестирование на разных устройствах 244
17.5.2. Поддержка другого разрешения экрана 244
17.5.3. Локализация 244
17.5.4. Пиктограмма приложения 245
17.5.5. Ссылки на магазин 245
17.5.6. Подготовка APK-файла к загрузке 246
Глава 18. Отладка приложений
248
18.1. Средства среды Eclipse 248
18.1.1. Выбор конфигурации запуска 248
18.1.2. Использование DDMS 251
18.1.3. Перспектива Debug 252
18.2. Утилиты отладки из Android SDK 254
18.2.1. Android Debug Bridge 254
18.2.2. Использование LogCat 254
18.2.3. Системные утилиты отладки 255
18.2.4. Отладчик gdb и Android-приложения 257
Вместо заключения 259
Приложение. Эмулятор Android и telnet 260
Предметный указатель 261