Главная | Статистика | Контакты
Навигация
Реклама
Интересное
Рецензии к фильмам
Реклама
Статистика
Android для программистов. Создаем приложения П. Дейтел и др.
Дата: 14 октября 2012

Android для программистов. Создаем приложения П. Дейтел и др.

Android для программистов. Создаем приложения. Эта книга даст вам всё, что нужно, для начала разработки приложений для Android и быстрой публикации их на Android Market. Авторы используют приложение-ориентированный подход, при котором описание каждой технологии рассматривается на примере 16 полностью протестированных приложений для Android.
Кроме описания процесса создания приложений, в книге дано пошаговое руководство по размещению ваших приложений на Android Market и примеры успешных публикаций.

Предисловие. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Авторские права и лицензии на код . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Целевая аудитория . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Особенности книги . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Соглашения, используемые в книге . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Центры Deitel Online Android Resource Centers . . . . . . . . . . . . . . . . . . . . . . . . 19
Бюллетень Deitel & Associates, Inc. Online . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Как связаться с авторами книги . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Благодарности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Рецензенты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Об авторах . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Подготовительные действия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Требования к аппаратному и программному обеспечению . . . . . . . . . . . . . . . 23
Установка Java Development Kit (JDK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Установка Eclipse IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Установка Android SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Установка плагина ADT для Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Установка платформы Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Создание виртуальных устройств Android (AVD) для использования
в эмуляторе Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Производительность AVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
(Дополнительно) Настройка устройства Android для разработки . . . . . . . . . . 29
(Дополнительно) Альтернативные среды разработки приложений Android . . . 30
Где взять примеры кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Глава 1. Введение в Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.2. Обзор платформы Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Открытость платформы и открытый исходный код . . . . . . . . . . . . . . . . . 35
Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Мультисенсорный экран . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Встроенные приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Соглашения относительно именования версий Android . . . . . . . . . . . . . . 38
1.3. Android 2.2 (Froyo) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Новые функции Android 2.2, предназначенные для разработчиков . . . . . 41
1.4. Android 2.3 (Gingerbread) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.5. Android 3.0 (Honeycomb) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

1.6. Android Ice Cream Sandwich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7. Загрузка приложений из Android Market . . . . . . . . . . . . . . . . . . . . . . . . .
1.8. Пакеты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9. Android Software Development Kit (SDK) . . . . . . . . . . . . . . . . . . . . . . . . .
Интегрированная среда разработки Eclipse . . . . . . . . . . . . . . . . . . . . . .
Плагин Android Development Tools (ADT) для Eclipse . . . . . . . . . . . . . . .
Эмулятор Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10. Краткий обзор объектной технологии . . . . . . . . . . . . . . . . . . . . . . . . . .
Автомобиль в качестве объекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Методы и классы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Создание экземпляра класса . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Повторное использование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Сообщения и вызовы методов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Атрибуты и переменные экземпляра класса . . . . . . . . . . . . . . . . . . . . .
Инкапсуляция . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Наследование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Объектно-ориентированный анализ и проектирование . . . . . . . . . . . . .
1.11. Тестирование приложения Doodlz на виртуальном устройстве AVD . . . .
Выполнение приложения Doodlz на устройстве Android . . . . . . . . . . . . .
1.12. Ресурсы Deitel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.13. Ресурсы для Android-разработчиков . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.14. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50
51
52
54
54
55
55
57
57
58
58
58
58
59
59
59
59
60
68
70
71
73
Глава 2. Google Play и бизнес-вопросы, связанные с разработкой
приложений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.2. Создание выдающихся Android-приложений . . . . . . . . . . . . . . . . . . . . . 75
2.3. Лучшие методики для разработчиков Android-приложений . . . . . . . . . . 76
2.3.1. Совместимость . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.3.2. Поддержка нескольких экранов . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.3.3. Советы по разработке интерфейса пользователя Android . . . . . . . 79
2.4. Регистрация на Google Play . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2.5. Создание учетной записи Google Checkout Merchant . . . . . . . . . . . . . . . 85
2.6. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.7. Подготовка приложений к публикации . . . . . . . . . . . . . . . . . . . . . . . . . 87
2.8. Загрузка приложений на Google Play . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.9. Другие «рынки приложений» Android . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.10. Вопросы ценообразования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
2.11. Монетизация приложений с помощью встроенной рекламы . . . . . . . . . . 99
2.12. Монетизация приложений: продажа виртуальных товаров
с помощью сервиса In-app Billing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2.13. Запуск приложения Market из пользовательского приложения . . . . . . 103
2.14. Управление приложениями, находящимися на Google Play . . . . . . . . . 103
2.15. Маркетинг приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104


2.16. Другие популярные платформы приложений . . . . . . . . . . . . . . . . . . .
2.17. Документация для Android-разработчиков . . . . . . . . . . . . . . . . . . . . . .
2.18. Шутим вместе с Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.19. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
110
111
112
112
Глава 3. Приложение Welcome: знакомимся с Eclipse
и модулем ADT Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
3.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
3.2. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
3.3. Интегрированная среда разработки Eclipse . . . . . . . . . . . . . . . . . . . . . . 115
Введение в Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
3.4. Создание нового проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Окно Package Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
3.5. Создание графического интерфейса пользователя приложения
Welcome с помощью визуального макетного редактора модуля ADT . . . 120
Графический интерфейс пользователя, заданный по умолчанию . . . . . 121
Конфигурирование Visual Layout Editor для использования
соответствующей библиотеки Android SDK . . . . . . . . . . . . . . . . . . . . . . 122
Удаление и воссоздание файла main.xml . . . . . . . . . . . . . . . . . . . . . . . 122
Настройка размера и разрешения экрана для Visual Layout Editor . . . . . 123
Размеры и разрешение изображений и экрана . . . . . . . . . . . . . . . . . . . 124
Шаг 1. Добавление изображений в проект . . . . . . . . . . . . . . . . . . . . . . 125
Шаг 2. Изменения свойства Id макета RelativeLayout . . . . . . . . . . . . . . . 126
Шаг 3. Присваивание свойству Background значения RelativeLayout . . . . 127
Шаг 4. Добавление компонента TextView . . . . . . . . . . . . . . . . . . . . . . . 127
Шаг 5. Настройка свойства Text компонента TextView с помощью
строковых ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Шаг 6. Настройка свойств Text size и Padding top компонента
TextView — пиксели, независимые от плотности
и от масштабирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Шаг 7. Настройка дополнительных свойств компонента TextView . . . . . 131
Шаг 8. Отображение логотипов Android и Deitel Bug с помощью
компонентов ImageViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
3.6. Структура файла main.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
welcomeRelativeLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
welcomeTextView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
droidImageView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3.7. Выполнение приложения Welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3.8. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Глава 4. Приложение Tip Calculator App: создание приложения Android
с помощью Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.2. Тестирование приложения Tip Calculator . . . . . . . . . . . . . . . . . . . . . . . . 142
4.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

4.4. Создание графического интерфейса приложения . . . . . . . . . . . . . . . . .
4.4.1. Знакомство с классом TableLayout . . . . . . . . . . . . . . . . . . . . . . . .
4.4.2. Создание проекта, добавление класса TableLayout и компонентов .
4.4.3. Просмотр созданного макета . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4.4. Завершение проекта путем настройки компонентов . . . . . . . . . . .
4.4.5. Завершенная XML-разметка GUI приложения Tip Calculator . . . . .
4.4.6 Файл strings.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5. Включение дополнительных функций в приложение . . . . . . . . . . . . . . .
4.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

143
144
145
149
150
154
157
157
169
Глава 5. Приложение Favorite Twitter® Searches: настройки Shared
Preferences, кнопки, вложенные структуры, интенты,
диалоговые окна Alert Dialogs, «раздувание» XML-разметки
и файла манифеста . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
5.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
5.2. Тестирование приложения Favorite Twitter Searches . . . . . . . . . . . . . . . 173
5.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
5.4. Создание графического интерфейса приложения и файлов ресурсов . . 177
5.4.1. Компонент main.xml TableLayout . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.4.2. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.4.3. Создание файлов ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5.4.4. Добавление класса TableLayout и компонентов . . . . . . . . . . . . . . 181
5.4.5. Создание компонента TableRow, отображающего кнопки
Search и Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
5.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
5.6. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
5.7. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Глава 6. Приложение Flag Quiz Game: ресурсы, AssetManager,
анимация с переходами, обработчик, меню и регистрация
сообщений об ошибках . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.2. Тестирование приложения Flag Quiz Game . . . . . . . . . . . . . . . . . . . . . . 207
6.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.4. Создание графического интерфейса приложения и файлов ресурсов . . 210
6.4.1. Компонент main.xml LinearLayout . . . . . . . . . . . . . . . . . . . . . . . . . 210
6.4.2. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
6.4.3. Создание и редактирование файлов ресурсов . . . . . . . . . . . . . . . 211
6.4.4. Добавление компонентов в макет LinearLayout . . . . . . . . . . . . . . 213
6.4.5. Создание динамически «раздуваемой» кнопки . . . . . . . . . . . . . . 216
6.4.6. Создание анимации «развевающегося флага» . . . . . . . . . . . . . . . 216
6.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
6.6. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
6.7. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

Глава 7. Приложение Cannon Game: прослушивание касаний
и жестов, покадровая анимация, графика, звук, потоки,
SurfaceView и SurfaceHolder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
7.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
7.2. Тестирование приложения Cannon Game . . . . . . . . . . . . . . . . . . . . . . . 239
7.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
7.4. Создание графического интерфейса пользователя приложения
и файлов ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4.2. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
7.4.3. Файл strings.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
7.4.4. Файл main.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.4.5. Добавление звуков в приложение . . . . . . . . . . . . . . . . . . . . . . . . 245
7.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
7.5.1. Определение концов линии с помощью класса Line . . . . . . . . . . . 246
7.5.2. Подкласс CannonGame класса Activity . . . . . . . . . . . . . . . . . . . . . 246
7.5.3. Подкласс CannonView класса View . . . . . . . . . . . . . . . . . . . . . . . . 250
7.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Глава 8. Игра SpotOn: анимация свойств, класс ViewPropertyAnimator,
интерфейс AnimatorListener, потоково-безопасные коллекции,
объекты SharedPreferences, заданные по умолчанию
для деятельности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
8.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
8.2. Тестирование приложения SpotOn Game . . . . . . . . . . . . . . . . . . . . . . . . 271
8.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8.4. Создание графического интерфейса и файлов ресурсов приложения . . 274
8.4.1. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
8.4.2. Файл main.xml RelativeLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.4.3. Файл разметки untouched.xml ImageView для нового пятнышка . . 276
8.4.4. Файл разметки life.xml ImageView для новых попыток . . . . . . . . . 277
8.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.5.1. Подкласс SpotOn класса Activity . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.5.2. Подкласс SpotOnView класса View . . . . . . . . . . . . . . . . . . . . . . . . 279
8.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
Глава 9. Приложение Doodlz: двумерная графика, диспетчер
SensorManager, мультитач-события и объекты Toast . . . . . . . . . . . 294
9.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
9.2. Тестирование приложения Doodlz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
9.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
9.4. Создание графического интерфейса пользователя и файлов ресурсов
приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
9.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
9.4.2. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299

9.4.3. Файл strings.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.4.4. Файл main.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.4.5. Файл color_dialog.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.4.6. Файл width_dialog.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.5.1. Подкласс Doodlz класса Activity . . . . . . . . . . . . . . . . . . . . . . . . .
9.5.2. Подкласс DoodleView класса View . . . . . . . . . . . . . . . . . . . . . . .
9.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
300
301
301
303
303
304
318
329
Глава 10. Приложение Address Book: компоненты ListActivity,
AdapterViews, адаптеры, несколько деятельностей, SQLite,
стили GUI, ресурсы меню и MenuIn?ater . . . . . . . . . . . . . . . . . . . . 330
10.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
10.2. Тестирование приложения Address Book . . . . . . . . . . . . . . . . . . . . . . . 331
10.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
10.4. Создание графического интерфейса пользователя и файлов ресурсов . . 336
10.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
10.4.2. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
10.4.3. Файл styles.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
10.4.4. Файл textview_border.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
10.4.5. Файл разметки AddressBook класса Activity:
contact_list_item.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
10.4.6. Разметка для класса ViewContact класса Activity:
view_contact.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
10.4.7. Разметка для класса AddEditContact класса Activity:
файл add_contact.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
10.4.8. Определение компонентов MenuItems приложения
с помощью ресурсов меню, заданных в XML-формате . . . . . . . . 341
10.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.5.1. Подкласс AddressBook класса ListActivity . . . . . . . . . . . . . . . . . . 343
10.5.2. Подкласс ViewContact класса Activity . . . . . . . . . . . . . . . . . . . . 350
10.5.3. Подкласс AddEditContact класса Activity . . . . . . . . . . . . . . . . . . 356
10.5.4. Класс утилиты DatabaseConnector . . . . . . . . . . . . . . . . . . . . . . 360
10.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Глава 11. Приложение Route Tracker: Google Maps API, GPS,
LocationManager, MapActivity, MapView и Overlay . . . . . . . . . . . . . 368
11.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
11.2. Тестирование приложения Route Tracker . . . . . . . . . . . . . . . . . . . . . . . 371
11.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
11.4. Создание графического интерфейса пользователя
и файлов ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
11.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
11.4.2. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
11.4.3. Разметка приложения Route Tracker: файл main.xml . . . . . . . . . 378

11.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.5.1. Подкласс RouteTracker класса MapActivity . . . . . . . . . . . . . . . . .
11.5.2. Подкласс BearingFrameLayout класса FrameLayout . . . . . . . . . . .
11.5.3. Подкласс RouteOverlay класса Overlay . . . . . . . . . . . . . . . . . . .
11.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
378
379
391
395
399
Глава 12. Приложение Slideshow: доступ к библиотекам Gallery и Media,
встроенные поставщики Content Providers, плеер MediaPlayer,
переходы между изображениями, пользовательские макеты
Custom ListActivity и шаблон View-Holder . . . . . . . . . . . . . . . . . . . . 401
12.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
12.2. Тестирование приложения Slideshow App . . . . . . . . . . . . . . . . . . . . . . 405
12.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
12.4. Создание графического интерфейса пользователя
и файлов ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
12.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
12.4.2. Использование стандартных пиктограмм Android
в графическом интерфейсе приложения . . . . . . . . . . . . . . . . . 411
12.4.3. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
12.4.4. Разметка элементов ListView в ListActivity приложения
Slideshow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
12.4.5. Меню ListActivity приложения Slideshow . . . . . . . . . . . . . . . . . . 412
12.4.6. Макет компонента EditText, определенный в диалоговом окне
Set Slideshow Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
12.4.7. Макет компонента ListActivity из SlideshowEditor . . . . . . . . . . . . 413
12.4.8. Макет элементов ListView в SlideshowEditor . . . . . . . . . . . . . . . 414
12.4.9. Макет компонента Activity из SlideshowPlayer . . . . . . . . . . . . . . 414
12.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
12.5.1. Класс SlideshowInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
12.5.2. Подкласс Slideshow класса ListActivity . . . . . . . . . . . . . . . . . . . . 417
12.5.3. Подкласс SlideshowEditor класса ListActivity . . . . . . . . . . . . . . . . 428
12.5.4. Подкласс SlideshowPlayer класса ListActivity . . . . . . . . . . . . . . . 437
12.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
Глава 13. Приложение Enhanced Slideshow App: сериализация данных,
фотографирование с помощью приложения Camera
и воспроизведение видеороликов с помощью VideoView . . . . . . 447
13.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
13.2. Тестирование приложения Enhanced Slideshow App . . . . . . . . . . . . . . . 448
13.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
13.4. Создание графического интерфейса пользователя
и файлов ресурсов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
13.4.1. Создание проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
13.4.2. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
13.4.3. Измененная разметка SlideshowEditor из ListActivity . . . . . . . . . 454

13.4.4. Разметка PictureTaker класса Activity . . . . . . . . . . . . . . . . . . . . .
13.4.5. Измененная разметка SlideshowPlayer класса Activity . . . . . . . .
13.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5.1. Класс MediaItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5.2. Класс SlideshowInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5.3. Класс Slideshow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5.4. Класс SlideshowEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5.5. Подкласс PictureTaker класса Activity . . . . . . . . . . . . . . . . . . . . .
13.5.6. Класс SlideshowPlayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
454
454
455
455
456
458
464
467
474
480
Глава 14. Приложение Weather Viewer: веб-службы, документы JSON,
фрагменты, ListFragment, DialogFragment, ActionBar,
навигационная панель с вкладками, виджеты, объекты
Broadcast Intents и BroadcastReceivers . . . . . . . . . . . . . . . . . . . . . . 481
14.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
14.2. Тестирование приложения Weather Viewer . . . . . . . . . . . . . . . . . . . . 484
14.3. Обзор применяемых технологий . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
14.4. Создание графического интерфейса пользователя и файлов
ресурсов приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
14.4.1. Файл AndroidManifest.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
14.4.2. Разметка класса WeatherViewerActivity, определенная
в файле main.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
14.4.3. Использование файла arrays.xml для хранения заданных
по умолчанию городов и почтовых индексов . . . . . . . . . . . . . . 490
14.4.4. Разметка меню WeatherViewerActivity, определенная
в файле actionmenu.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
14.4.5. Разметка и конфигурирование виджета приложения
с помощью файла WeatherProvider . . . . . . . . . . . . . . . . . . . . . 491
14.5. Создание приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
14.5.1. Класс WeatherViewerActivity . . . . . . . . . . . . . . . . . . . . . . . . . . 492
14.5.2. Класс CitiesFragment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
14.5.3. Класс AddCityDialogFragment . . . . . . . . . . . . . . . . . . . . . . . . . 516
14.5.4. Класс ForecastFragment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
14.5.5. Класс SingleForecastFragment . . . . . . . . . . . . . . . . . . . . . . . . . 520
14.5.6. Класс ReadLocationTask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
14.5.7. Класс ReadForecastTask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
14.5.8. Класс FiveDayForecastFragment . . . . . . . . . . . . . . . . . . . . . . . . 537
14.5.9. Класс ReadFiveDayForecastTask . . . . . . . . . . . . . . . . . . . . . . . . 544
14.5.10. Класс DailyForecast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
14.5.11. Класс WeatherProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550

Название: Android для программистов. Создаем приложения
Автор: П. Дейтел, Х. Дейтел, Э. Дейтел, М. Морган
Издательство: Питер
Год: 2012
Страниц: 560
Язык: Русский
Формат: pdf, doc / rar
Размер: 22,08 Mb

Загрузить Android для программистов. Создаем приложения П. Дейтел и др.



Смотрите также:
  • Android для программистов. Создаем приложения / Дейтел П. , Дейтел Х. , Дей ...
  • Google Android. Создание приложений для смартфонов и планшетных ПК
  • YouWave for Android Home v.1.3 (Android)

  • Мы рады видеть Вас на нашем портале. В любое время суток, Вы можете в комфортной обстановке находить практически все, что вам необходимо для развлечений или учебы. Все файлы, в том числе Android для программистов. Создаем приложения П. Дейтел и др. мы разложили по категориям и подкатегориям для удобного поиска необходимого. Наш портал постоянно обновляется и если сейчас вы не нашли, того что искали, то обязательно посетите нас позднее, вполне возможно все уже будет. С помощью обратной связи оставляйте свои пожелания по развитию, а также сообщайте о неработающих ссылках, если таковые имеются. Мы придерживаемся определенных принципов в развитии портала, среди которых неизменным остается подробное описание, картинка и любая дополнительная информация, если требуется. Порталу уже много лет и мы рады предложить вам накопленные годами материалы, как развлекательные, так и просто необходимые в повседневной жизни, без которых не обойтись. Мы знаем, что сейчас существует множество подобных порталов, но мы стараемся делать наш портал не только удобным для вас, но и наполнять его только лучшими и необходимым материалами. Так что, желаем приятного пребывания у нас и нахождения всего необходимого!
    Вход на сайт
    Что то ищите?