Пол Дейтел, Харви Дейтел, Эби Дейтел, Майкл Моргано "Android для разработчиков" Питер, 2015 год, 384 стр., перевод: Е. Матвеев

Практическое руководство по разработке и созданию приложений.

Пол Дейтел, Харви Дейтел, Эби Дейтел, Майкл Моргано «Android для разработчиков» Питер, 2015 год, 384 стр., перевод: Е. Матвеев (10,6 мб. pdf)

Второе издание книги «Android для разработчиков» — говорит о огромной популярности этой мобильной платформы не только среди пользователей но и в кругу программистов. Разработка мобильных приложений является прекрасным способом заявить о себе и возможностью заработать деньги, размещая свои приложения на Google Play. Книги Дейтелов, а это авторы книг по многим языкам и технологиям программирования (C++, Perl, Python, Java, C#, JavaScript, XML и другие), широко известны во всем мире и переведены на многие языки. Если вы являетесь программистом, то скорее всего вы читали хотя бы одну их книгу. Стоит отметить, что данное издание полностью переработано под Android 4.3 и 4.4, содержит сведения о разработке на Eclipse и новом Android Studio.

В книге все описанные технологии используемые при разработке рассмотрены на практических примерах работающих приложений. 16 приложений, которые вы сможете создать и протестировать, изучая методику и технологию для разработчиков под Android. Так же в книге вы найдете инструкцию с описанием пошаговых действий для регистрации и добавления своих Android приложений на Google Play.
ISBN: 978-5-496-01517-2

Оглавление книги
Требования к аппаратному и программному обеспечению 23
Установка Java Development Kit ODK) 23
Выбор среды разработки 24
Android 4.3 SDK 25
Создание виртуальных устройств Android (AVD) для использования в эмуляторе Android 26
Настройка устройства Android для разработки 28
Как получить примеры кода 29

Глава 1. Введение в Android 31
1.1. Введение 32
1.2. Android — мировой лидер в области мобильных операционных систем 32
1.3. Особенности Android 33
1.4. Операционная система Android 37
1.4.1. Android 2.2 (Froyo) 38
1.4.2. Android 2.3 (Gingerbread) 39
1.4.3. Android 3.0-3.2 (Honeycomb) 39
1.4.4. Android Ice Cream Sandwich 40
1.4.5. Android 4.1 -4.3 (Jelly Bean) 41
1.4.6. Android 4.4 (KitKat) 42
1.5. Загрузка приложений из Google Play 43
1.6. Пакеты 45
1.7. Android Software Development Kit (SDK) 46
1.8. Краткий обзор объектно-ориентированного программирования 49
1.8.1. Автомобиль как объект 50
1.8.2. Методы и классы 50
1.8.3. Создание экземпляра класса 51
1.8.4. Повторное использование 51
1.8.5. Сообщения и вызовы методов 51
1.8.6. Атрибуты и переменные экземпляра класса 51
1.8.7. Инкапсуляция 52
1.8.8. Наследование 52
1.8.9. Объектно-ориентированный анализ и проектирование 52
1.9. Тестирование приложения Doodlz на виртуальном устройстве AVD 53
1.9.1. Запуск приложения Doodlz на AVD для смартфона Nexus 4 54
1.9.2. Запуск Doodlz Арр на планшетном AVD 64
1.9.3. Выполнение приложения Doodlz на устройстве Android 64
1.10. Создание успешных Android-приложений 66
1.11. Ресурсы для разработчиков 68
1.12. Резюме 70

Глава 2. Приложение Welcome 72
2.1. Введение 73
2.2. Обзор применяемых технологий 74
2.2.1. Android Developer Tools IDE 74
2.2.2. TextView и ImageView 74
2.2.3. Ресурсы приложения 74
2.2.4. Доступность 74
2.2.5. Интернационализация 75
2.3. Создание приложения 75
2.3.1. Запуск интегрированной среды разработки Android Developer Tools 75
2.3.2. Создание нового проекта 75
2.3.3. Диалоговое окно New Android Application 75
2.3.4. Шаг Configure Project 78
2.3.5. Шаг Configure Launcher Icon 78
2.3.6. Шаг Create Activity 80
2.3.7. Шаг Blank Activity 81
2.4. Окно Android Developer Tools 82
2.4.1. Окно Package Explorer 82
2.4.2. Окна редактора 83
2.4.3. Окно структуры 84
2.4.4. Файлы ресурсов приложения 84
2.4.5. Макетный редактор 85
2.4.6. Графический интерфейс по умолчанию 85
2.5. Построение графического интерфейса приложения 87
2.5.1. Добавление изображений в проект 87
2.5.2. Изменение свойства Id компонентов RelativeLayout и TextView 88
2.5.3. Настройка компонента TextView 89
2.6. Выполнение приложения Welcome 96
2.7. Обеспечение доступности приложения 97
2.8. Интернационализация приложения 99
2.9. Резюме 104

Глава 3. Приложение Tip Calculator 105
3.1. Введение 106
3.2. Тестирование приложения Tip Calculator 107
3.3. Обзор применяемых технологий 108
3.3.1. Класс Activity 108
3.3.2. Методы жизненного цикла активности 108
3.3.3. Построение представления с использованием компонентов Linear Layout и GridLayout 109
3.3.4. Создание и настройка графического интерфейса 110
3.3.5. Форматирование чисел в соответствии с локальным контекстом 111
3.3.6. Реализация интерфейса Text Watcher для обработки изменений в компоненте EditText Ill
3.3.7. Реализация интерфейса OnSeekBarChangeListener для обработки изменения позиции ползунка SeekBar 112
3.3.8. AndroidManifest.xml 112
3.4. Построение графического интерфейса приложения 112
3.4.1. Основы GridLayout 112
3.4.2. Создание проекта TipCalculator 114
3.4.3. Переключение на GridLayout 115
3.4.4. Добавление компонентов TextView, EditText, SeekBar и Linear Layout 116
3.4.5. Настройка компонентов 118
3.5. Включение функциональности в приложение 123
3.6. Файл AndroidManifest.xml 132
3.7. Резюме 133

Глава 4. Приложение Twitter® Searches 135
4.1. Введение 136
4.2. Тестирование приложения 137
4.2.1. Импортирование и запуск приложения 137
4.2.2. Добавление нового запроса 137
4.2.3. Просмотр результатов поиска 139
4.2.4. Редактирование запроса 140
4.2.5. Пересылка запроса 141
4.2.6. Удаление запроса 142
4.2.7. Прокрутка списка сохраненных запросов 143
4.3. Обзор применяемых технологий 144
4.3.1. ListView 144
4.3.2. ListActivity 145
4.3.3. Настройка макета ListActivity 145
4.3.4. ImageButton 145
4.3.5. SharedPreferences 145
4.3.6. Интенты запуска других активностей 146
4.3.7. AlertDialog 147
4.3.8. Файл AndroidManifest.xml 148
4.4. Построение графического интерфейса приложения 148
4.4.1. Создание проекта 148
4.4.2. Файл activity_main.xml 149
4.4.3. Добавление GridLayout и других компонентов 150
4.4.4. Панель инструментов макетного редактора 155
4.4.5. Макет варианта ListView: list_item.xml 157
4.5. Построение класса MainActivity 158
4.5.1. Команды package и import 159
4.5.2. Расширение ListActivity 160
4.5.3. Поля класса MainActivity 161
4.5.4. Переопределение метода активности onCreate 162
4.5.5. Анонимный внутренний класс, реализующий интерфейс OnClickListener для сохранения нового или измененного запроса 164
4.5.6. Метод addTaggedSearch 167
4.5.7. Анонимный внутренний класс, реализующий интерфейс OnltemClickListener класса ListView для отображения результатов поиска 168
4.5.8. Анонимный внутренний класс, реализующий интерфейс OnltemLongClickListener класса ListView для пересылки, изменения и удаления запросов 170
4.5.9. Метод shareSearch 172
4.5.10. Метод deleteSearch 174
4.6. AndroidManifest.xml 175
4.7. Резюме 176

Глава 5. Приложение Flag Quiz 177
5.1. Введение 178
5.2. Тестирование приложения Flag Quiz 179
5.2.1. Импортирование и запуск приложения 179
5.2.2. Настройка викторины 180
5.2.3. Ответы на вопросы викторины 180
5.3. Обзор применяемых технологий 184
5.3.1. Меню 184
5.3.2. Фрагменты 184
5.3.3. Методы жизненного цикла фрагментов 185
5.3.4. Управление фрагментами 186
5.3.5. Объекты Preference 186
5.3.6. Папка assets 186
5.3.7. Папки ресурсов 187
5.3.8. Поддержка разных размеров экранов и разрешений 187
5.3.9. Определение размера экрана 188
5.3.10. Вывод временных сообщений 188
5.3.11. Использование обработчика для планирования будущих операций 189
5.3.12. Применение анимации к компонентам 189
5.3.13. Регистрация исключений с помощью Log.e 189
5.3.14. Использование явного интента для запуска другой активности в том же приложении 190
5.3.15. Структуры данных Java 190
5.4. Построение графического интерфейса и файлов ресурсов 190
5.4.1. Создание проекта 190
5.4.2. Файл strings.xml и ресурсы форматных строк 191
5.4.3. arrays.xml 192
5.4.4. colors.xml 193
5.4.5. dimens.xml 194
5.4.6. Макет activity_settings.xml 194
5.4.7. Макет activity_main.xml для телефонов и планшетов в портретной ориентации 195
5.4.8. Макет fragment_quiz.xml 196
5.4.9. Макет activity_main.xml для планшета в альбомной ориентации 198
5.4.10. Определение конфигурации приложения в файле preferences.xml 199
5.4.11. Создание анимации «качающегося» флага 201
5.5. Класс MainActivity 203
5.5.1. Команда package, команды import и поля 203
5.5.2. Переопределение метода onCreate 204
5.5.3. Переопределение метода onStart 206
5.5.4. Переопределение метода onCreateOptionsMenu 207
5.5.5. Переопределение метода onOptionsItemSelected 208
5.5.6. Анонимный внутренний класс, реализующий интерфейс OnSharedPreferenceChangeListener 208
5.6. Класс QuizFragment 210
5.6.1. Команда package и команды import 210
5.6.2. Поля 211
5.6.3. Переопределение метода onCreateView 212
5.6.4. Метод updateGuessRows 214
5.6.5. Метод updateRegions 215
5.6.6. Метод resetQuiz 215
5.6.7. Метод loadNextFlag 217
5.6.8. Метод getCountrvName 219
5.6.9. Анонимный внутренний класс, реализующий интерфейс OnClickListener 220
5.6.10. Метод disableButtons 222
5.7. Класс SettingsFragment 223
5.8. Класс SettingsActivity 223
5.9. AndroidManifestxml 224
5.10. Резюме 225

Глава 6. Приложение Cannon Game 227
6.1. Введение 228
6.2. Тестирование приложения Cannon Game 229
6.3. Обзор применяемых технологий 230
6.3.1. Присоединение пользовательского представления к макету 230
6.3.2. Использование папки ресурсов raw 230
6.3.3. Методы жизненного цикла активности и фрагмента 230
6.3.4. Переопределение метода onTouchEvent класса View 231
6.3.5. Добавление звука с помощью SoundPool и AudioManager 231
6.3.6. Покадровая анимация с помощью потоков, SurfaceView и SurfaceHolder 232
6.3.7. Простое обнаружение столкновений 232
6.3.8. Рисование графики с помощью Paint и Canvas 233
6.4. Создание графического интерфейса приложения и файлов ресурсов 233
7.4.1. Создание проекта 233
6.4.2. Файл strings.xml 234
6.4.3. Файл fragment_game.xml 234
6.4.4. Файл activity_main.xml 235
6.4.5. Добавление звуков в приложение 235
6.5. Класс Line 236
6.6. Класс MainActivity 236
6.7. Класс CannonGameFragment 237
6.8. Класс CannonView 238
6.8.1. Команда package и команды import 239
6.8.2. Переменные экземпляров и константы 239
6.8.3. Конструктор 241
6.8.4. Переопределение метода onSizeChanged класса View 243
6.8.5. Метод newGame 244
6.8.6. Метод updatePositions 245
6.8.7. Метод fireCannonball класса CannonView 249
6.8.8. Метод alignCannon 249
6.8.9. Метод drawGameElements 250
6.8.10. Метод showGameOverDialog 252
6.8.11. Методы stopGame и releaseResources 254
6.8.12. Реализация методов SurfaceHolder.Callback 254
6.8.13. Переопределение метода onTouchEvent 255
6.8.14. Поток CannonThread: использование потока для создания цикла игры 256
6.9. Резюме 258

Глава 7. Приложение Doodlz 259
7.1. Введение 260
7.2. Обзор применяемых технологий 261
7.2.1. Использование SensorManager для прослушивания событий акселерометра 262
7.2.2. Пользовательские реализации DialogFragment 262
7.2.3. Рисование с использованием Canvas и Bitmap 263
7.2.4. Обработка событий многоточечных касаний и хранение данных линий в объектах Path 263
7.2.5. Режим погружения Android 4.4 263
7.2.6. GestureDetector и SimpleOnGestureListener 264
7.2.7. Сохранение рисунка в галерее устройства 264
7.2.8. Поддержка печати в Android 4.4 и класс PrintHelper из Android Support Library 264
7.3. Создание графического интерфейса и файлов ресурсов приложения 264
7.3.1. Создание проекта 265
7.3.2. Файл strings.xml 265
7.3.3. Файл dimens.xml 266
7.3.4. Меню DoodleFragment 267
7.3.5. Макет activity_main.xml для MainActivity 268
7.3.6. Файл fragment_doodle.xml для фрагмента DoodleFragment 269
7.3.7. Макет fragment_color.xml для фрагмента ColorDialogFragment 269
7.3.8. Макет fragment_line_width.xml для фрагмента LineWidthDialogFragment 272
7.3.9. Добавление класса EraselmageDialogFragment 273
7.4. Класс MainActivity 274
7.5. Класс DoodleFragment 275
7.6. Класс DoodleView 282
7.7. Класс ColorDialogFragment 295
7.8. Класс LineWidthDialogFragment 299
7.9. Класс EraselmageDialogFragment 302
7.10. Резюме 304

Глава 8. Приложение Address Book 306
8.1. Введение 307
8.2. Тестирование приложения Address Book 309
8.3. Обзор применяемых технологий 311
8.3.1. Отображение фрагментов с использованием FragmentTransaction 311
8.3.2. Передача данных между фрагментом и управляющей активностью 311
8.3.3. Метод onSavelnstanceState 312
8.3.4. Определение и применение стилей к компонентам GUI 312
8.3.5. Определение фона для компонентов TextView 312
8.3.6. Расширение класса ListFragment для создания фрагмента, содержащего ListView 312
8.3.7. Работа с базой данных SQLite 313
8.3.8. Выполнение операций с базами данных за пределами потока GUI с использованием AsyncTask 313
8.4. Создание графического интерфейса пользователя и файлов ресурсов 313
8.4.1. Создание проекта 313
8.4.2. Создание классов приложения 314
8.4.3. Файл strings.xml 315
8.4.4. Файл styles.xml 316
8.4.5. Файл textview_border.xml 317
8.4.6. Файл макета MainActivity: activity_main.xml 317
8.4.7. Файл макета DetailsFragment: fragment_details.xml 318
8.4.8. Макет AddEditFragment: fragment_add_edit.xml 320
8.4.9. Определение меню фрагментов 321
8.5. Класс MainActivity 323
8.6. Класс ContactListFragment 329
8.7. Класс AddEditFragment 336
8.8. Класс DetailsFragment 342
8.9. Вспомогательный класс DatabaseConnector 350
8.10. Резюме 356

Глава 9. Google Play и коммерческие аспекты разработки 358
9.1. Введение 359
9.2. Подготовка приложений к публикации 359
9.2.1. Тестирование приложения 360
9.2.2. Лицензионное соглашение 360
9.2.3. Значки и метки 360
9.2.4. Контроль версии приложения 361
9.2.5. Лицензирование для управления доступом к платным приложениям 362
9.2.6. Маскировка кода 362
9.2.7. Получение закрытого ключа для цифровой подписи 362
9.2.8. Снимки экрана 363
9.2.9. Информационный видеоролик 364
9.3. Цена приложения: платное или бесплатное 365
9.3.1. Платные приложения 366
9.3.2. Бесплатные приложения 367
9.4. Монетизация приложений с помощью встроенной рекламы 368
9.5. Внутренняя продажа виртуальных товаров 369
9.6. Регистрация в Google Play 371
9.7. Создание учетной записи Google Wallet 371
9.8. Отправка приложений в Google Play 372
9.9. Запуск Play Store из приложения 374
9.10. Управление приложениями в Google Play 375
9.11. Другие магазины приложений Android 375
9.12. Другие популярные платформы мобильных приложений 376
9.13. Маркетинг приложения 377
9.14. Резюме 382

Скачать книгу бесплатно10,6 мб. pdf
Android для разработчиков. Видео

Похожая литература