Оглавление
11
Что делает Android особенным? 11
Для кого предназначена эта книга? 12
Что вы найдете в этой книге? 13
Что нового в третьем издании? 13
Новое в версии Cupcake 13
Новое в версии Donut 14
Новое в версии Eclair 14
Новое в версии Eclair MR1 14
Новое в версии Froyo и в других версиях 14
Онлайн-ресурсы 15
Вперед >> 15
ЧАСТЬ I .ВВЕДЕНИЕ В ANDROID
Глава 1 .Быстрый старт 18
1 .1 .Установка инструментов 18
Java 5 18
Eclipse 19
Android SDK Starter Package 19
Android SDK Components 20
Плагины для Eclipse 21
1 .2 .Создание первой программы 23
1 .3 .Запуск программы на эмуляторе 23
1 .4 .Запуск на реальном телефоне 27
1 .5 .Вперед >> 28
Глава 2 .Ключевые концепции 29
2 .1 .Общая картина 29
Ядро Linux 29
Библиотеки 30
Среда выполнения Android 31
Каркас приложений 32
Приложения и виджеты 33
2 .2 .Оно живое! 33
Процесс != Приложение 34
Жизненные циклы богатых и знаменитых 34
2 .3 .Строительные блоки 36
Деятельности 37
Намерения 37
Сервисы 37
Контент-провайдеры 38
2 .4 .Использование ресурсов 38
2 .5 .Безопасность и защищенность 38
2 .6 .Вперед >> 39
ЧАСТЬ II .ОСНОВЫ ANDROID
Глава 3 .Разработка пользовательского интерфейса 42
3 .1 .Введение в демонстрационную программу Sudoku 42
3 .2 .Декларативная разработка 43
3 .3 .Создание стартового экрана 44
3 .4 .Использование альтернативных ресурсов 52
3 .5 .Создание информационного окна 54
3 .6 .Применение тем 58
3 .7 .Добавление меню 59
3 .8 .Добавление установок 61
3 .9 .Начало новой игры 63
3 .10 .Отладка 64
Отладка с помощью записи сообщений в журнал 65
Отладка с помощью отладчика 66
3 .11 .Выход из игры 66
3 .12 .Вперед >> 66
Глава 4 .Введение в 2D-графику 68
4 .1 .Основы 68
Класс Color (Цвет) 69
Класс Paint (Рисование) 69
Объект Canvas (Холст) 70
Класс Path (Контур) 71
Класс Drawable (Визуализация) 71
4 .2 .Добавление графики к Sudoku 73
Начало игры 73
Определение класса Game 73
Определение класса PuzzleView 75
Рисование игровой доски 76
Рисование чисел 79
4 .3 .Обработка ввода 80
Задание и обновление выделенной области 81
Ввод чисел 82
Добавление подсказок 84
Встряска 85
4 .4 .Конец истории 85
Создание экранной клавиатуры 86
Создание игровой логики 90
Разное 92
4 .5 .Дополнительные улучшения 94
4 .6 .Вперед >> 95
Глава 5 .Мультимедиа 96
5 .1 .Проигрывание аудио 96
5 .2 .Проигрывание видео 101
5 .3 .Добавление звуков в Sudoku 104
5 .4 .Вперед >> 107
Глава 6 .Хранение локальных данных 108
6 .1 .Добавление пункта Options в Sudoku 108
6 .2 .Продолжение старой игры 110
6 .3 .Запоминание текущей позиции курсора 112
6 .4 .Доступ к внешней файловой системе 113
6 .5 .Доступ к SD-карте 114
6 .6 .Вперед>> 115
ЧАСТЬ III .ЗА ПРЕДЕЛАМИ ОСНОВ
Глава 7 .Объединенный мир 118
7 .1 .Просмотр ресурсов Интернета с помощью намерения 119
7 .2 .Веб-браузер с вьювером 123
7 .3 .Из JavaScript в Java и обратно 127
7 .4 .Использование веб-сервисов 133
7 .5 .Вперед>> 144
Глава 8 .Определение местоположения и использование сенсоров 145
8 .1 .Места, места, места 145
Где я? 147
Обновление информации о местоположении 149
Заметки об эмуляции 151
8 .2 .Выжимаем все из сенсоров 152
Использование сенсоров 152
Интерпретация показаний сенсоров 153
Замечания об эмуляторе 154
8 .3 .Взгляд с высоты птичьего полета 155
Встраивание MapView 155
Подготовка 158
Замечания об эмуляторе 159
8 .4 .Вперед>> 159
Глава 9 .Работа с SQL 161
9 .1 .Введение в SQLite 161
9 .2 .SQL 101 162
DDL-запросы 163
Modification-запросы 163
Query-запросы 163
9 .3 .Привет, база данных 164
Использование SQLiteOpenHelper 165
Создание основной программы 166
Добавление строки 168
Выполнение запросов 169
Отображение результатов запроса 170
9 .4 .Связывание данных 171
9 .5 .Использование ContentProvider 174
Изменение основной программы 175
Добавление строки 176
Выполнение запроса 176
9 .6 .Создание реализации ContentProvider 176
9 .7 .Вперед>> 178
Глава 10 .3D-графика в OpenGL 179
10 .1 .Основы 3D-графики 179
10 .2 .Введение в OpenGL 180
10 .3 .Создание OpenGL-программы 181
10 .4 .Рендеринг сцены 183
10 .5 .Построение модели 186
10 .6 .Свет, камера 189
10 .7 .Мотор! 191
10 .8 .Применение текстур 192
10 .9 .Ку-ку 194
10 .10 .Измерение плавности 195
10 .11 .Вперед>> 197
ЧАСТЬ IV .СЛЕДУЮЩЕЕ ПОКОЛЕНИЕ
Глава 11 .Мульти-тач 200
11 .1 .Введение в мульти-тач 200
11 .2 .Создание примера Touch 202
11 .3 .Изучение событий касания 205
11 .4 .Установки для трансформации изображения 207
11 .5 .Реализация обработки жеста перетаскивания 208
11 .6 .Реализация обработки жеста изменения масштаба 209
Расстояние между двумя точками 210
Середина расстояния между двумя точками 211
11 .7 .Вперед>> 211
Глава 12 .Нет места лучше дома 212
12 .1 .Привет, виджет 212
Создание вашего первого виджета 212
Вызываем все виджеты! 214
Растягиваем по размеру 215
Охватить и растянуть 216
Запуск виджета 217
Обновление виджета 218
Уходим в отрыв 220
12 .2 .Интерактивные обои 220
Создание проекта Wallpaper 221
Введение в сервисы 222
Создание механизма отрисовки 223
Повторное использование кода OpenGL 225
Создание и уничтожение механизма отрисовки 225
Управление поверхностью 227
Делаем обои видимыми 228
Обработка пользовательского ввода 229
12 .3 .Вперед>> 231
Глава 13 .Написав однажды, протестируй везде 232
13 .1 .Джентльмены, запустите ваши эмуляторы 233
13 .2 .Компоновка для множества версий Android 234
13 .3 .Разворачивание программы на различных API Android 235
13 .4 .Парад ошибок 240
13 .5 .Все экраны, большие и маленькие 242
13 .6 .Установка на SD-карту 243
13 .7 .Вперед>> 244
Глава 14 .Публикация на Android Market 245
14 .1 .Подготовка 245
14 .2 .Подписывание 246
14 .3 .Публикация 247
14 .4 .Обновление 248
14 .5 .Заключительные положения 249
Часть V .Приложения
Приложение А .Сравнение языка API Java и Android 252
А .1 .Подмножество языка 252
Уровень языка 252
Встроенные типы данных 252
Многопоточность и синхронизация 253
Рефлексия 253
Финализация 253
A .2 .Подмножество стандартных библиотек 253
Поддерживаемые 254
Неподдерживаемые 254
Пакеты других производителей 255
Приложение Б .Библиография 256
Добавить комментарий