Навигация
» Аниме
» Утиллиты » Музыка » Фильмы » Юмор » Разное » Видеоклипы » Анимация » Игры » Книги и журналы » Заставки » Трейлеры » Рецензии Реклама
Интересное
Реклама
Статистика
|
Android для программистов. Создаем приложения П. Дейтел и др.
Дата: 14 октября 2012
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 для программистов. Создаем приложения П. Дейтел и др. мы разложили по категориям и подкатегориям для удобного поиска необходимого. Наш портал постоянно обновляется и если сейчас вы не нашли, того что искали, то обязательно посетите нас позднее, вполне возможно все уже будет. С помощью обратной связи оставляйте свои пожелания по развитию, а также сообщайте о неработающих ссылках, если таковые имеются. Мы придерживаемся определенных принципов в развитии портала, среди которых неизменным остается подробное описание, картинка и любая дополнительная информация, если требуется. Порталу уже много лет и мы рады предложить вам накопленные годами материалы, как развлекательные, так и просто необходимые в повседневной жизни, без которых не обойтись. Мы знаем, что сейчас существует множество подобных порталов, но мы стараемся делать наш портал не только удобным для вас, но и наполнять его только лучшими и необходимым материалами. Так что, желаем приятного пребывания у нас и нахождения всего необходимого! |
Вход на сайт
Что то ищите?
|