Ешь, двигайся, спи Жесткий подход Дэна Кеннеди Телефоны Бизбук - c 10 до 18 по будним дням
 
Наши проекты:
Вход для зарегистрированных пользователей
Регистрация нового пользователя
Каталог книг Новинки Анонсы Заказы / Корзина Рассылка Оплата и Доставка Контакты
Вы находитесь в разделе каталога:
• Android для разработчиков. 3-е издание, Дейтел П., Дейтел Х.


Android для разработчиков. 3-е издание
Android для разработчиков. 3-е издание
Дейтел П., Дейтел Х.
Год выпуска: 2016
Изд-во: Питер
ISBN: 978-5-496-02371-9
Переплёт: мягкий
512 страниц
Цена: 628.00 грн.
Временно отсутствует     Оставить заявку
Добро пожаловать в динамичный мир разработки приложений для смартфонов и планшетов Android с использованием Android Software Development Kit (SDK), языка программирования Java™, а также новой и стремительно развивающейся среды разработки Android Studio. В основе книги лежит принцип разработки, ориентированной на приложения, - концепции показаны на примере полностью работоспособных приложений Android, а не фрагментов кода.
Более миллиона человек уже воспользовались книгами Дейтелов, чтобы освоить Java, C#, C++, C, JavaScript, XML, Visual Basic, Visual C++, Perl, Python и другие языки программирования.

Третье издание книги "Android для разработчиков" позволит вам не только приступить к разработке приложений для Android , но и быстро опубликовать их в Google Play. Третье издание книги было полностью обновлено и познакомит вас с возможностями Android 6 и Android Studio.




Оглавление книги "Android для разработчиков"




Предисловие...........................................................................................20
Авторские права и лицензии на код......................................................................................21
Целевая аудитория......................................................................................................................21
Особенности книги......................................................................................................................22
Как связаться с авторами книги.............................................................................................26
Благодарности...............................................................................................................................27
Об авторах......................................................................................................................................28
О компании Deitel & Associates, Inc......................................................................................29
Подготовка..............................................................................................30
Требования к аппаратному и программному обеспечению...........................................30
Установка Java Development Kit (JDK)...............................................................................30
Установка пакета Android Studio............................................................................................31
Ознакомительные версии.................................................................................................31
Настройка Android Studio для вывода номеров строк....................................................32
Отключение свертки кода в Android Studio.......................................................................33
Android 6 SDK...............................................................................................................................33
Создание виртуальных устройств Android (AVD)...........................................................33
Настройка устройства Android для разработки................................................................34
Как получить примеры кода....................................................................................................35
О средствах разработчика Android........................................................................................35
Глав 1. Введение в Android....................................................................36
1.1. Введение..................................................................................................................................37
1.2. Android - мировой лидер в области мобильных операционных систем..........37
1.3. Особенности Android..........................................................................................................38
1.4. Операционная система Android......................................................................................42
1.4.1. Android 2.2 (Froyo)..................................................................................................43
1.4.2. Android 2.3 (Gingerbread)......................................................................................44
1.4.3. Android 3.0-3.2 (Honeycomb)..............................................................................45
1.4.4. Android Ice Cream Sandwich.................................................................................45
1.4.5. Android 4.1-4.3 (Jelly Bean)..................................................................................47
1.4.6. Android 4.4 (KitKat)................................................................................................48
1.4.7. Android 5.0 и 5.1 (Lollipop)....................................................................................49
1.4.8. Android 6 (Marshmallow).......................................................................................51
1.5. Загрузка приложений из Google Play...........................................................................52
1.6. Пакеты......................................................................................................................................54
1.7. Android Software Development Kit (SDK)...................................................................56
1.8. Краткий обзор объектно-ориентированного программирования.......................59
1.8.1. Автомобиль как объект..........................................................................................59
1.8.2. Методы и классы......................................................................................................60
1.8.3. Создание экземпляра класса................................................................................60
1.8.4. Повторное использование.....................................................................................60
1.8.5. Сообщения и вызовы методов.............................................................................60
1.8.6. Атрибуты и переменные экземпляра класса...................................................61
1.8.7. Инкапсуляция...........................................................................................................61
1.8.8. Наследование.............................................................................................................61
1.8.9. Объектно-ориентированный анализ и проектирование.............................62
1.9. Тестирование приложения Tip Calculator на виртуальном устройстве AVD.62
1.9.1. Запуск приложения Tip Calculator в Android Studio...................................63
1.9.2. Создание виртуальных устройств Android (AVD).......................................65
1.9.3. Запуск приложения Tip Calculator на AVD смартфона Nexus 6..............67
1.9.4. Выполнение приложения Tip Calculator на устройстве Android............72
1.10. Создание успешных Android-приложений...............................................................74
1.11. Ресурсы для разработчиков............................................................................................76
1.12. Резюме...................................................................................................................................78
Глава 2. Приложение Welcome..............................................................79
2.1. Введение..................................................................................................................................80
2.2. Обзор применяемых технологий....................................................................................81
2.2.1. Android Studio...........................................................................................................81
2.2.2. LinearLayout, TextView и ImageView.................................................................81
2.2.3. XML..............................................................................................................................82
2.2.4. Ресурсы приложения..............................................................................................82
2.2.5. Доступность...............................................................................................................82
2.2.6. Интернационализация...........................................................................................82
2.3. Создание приложения........................................................................................................83
2.3.1. Запуск Android Studio............................................................................................83
2.3.2. Создание нового проекта.......................................................................................83
2.3.3. Диалоговое окно Create New Project.................................................................83
2.3.4. Шаг Target Android Devices..................................................................................85
2.3.5. Шаг Add and Activity to Mobile...........................................................................87
2.3.6. Шаг Customize the Activity...................................................................................88
2.4. Окно Android Studio............................................................................................................89
2.4.1. Окно Project...............................................................................................................90
2.4.2. Окна редактора..........................................................................................................91
2.4.3. Окно Component Tree.............................................................................................92
2.4.4. Файлы ресурсов приложения..............................................................................92
2.4.5. Макетный редактор.................................................................................................92
2.4.6. Графический интерфейс по умолчанию...........................................................94
2.4.7. Разметка XML для графического интерфейса по умолчанию.................94
2.5. Построение графического интерфейса приложения...............................................95
2.5.1. Добавление изображения в проект....................................................................95
2.5.2. Добавление значка приложения.........................................................................97
2.5.3. Замена RelativeLayout на LinearLayout............................................................99
2.5.4. Изменение свойств id и orientation компонента LinearLayout..............100
2.5.5. Изменение свойств id и text компонента TextView....................................101
2.5.6. Настройка свойства textSize компонента TextView - пикселы, независимые от плотности и масштабирования....................................................103
2.5.7. Настройка свойства textColor компонента TextView................................105
2.5.8. Настройка свойства gravity компонента TextView.....................................106
2.5.9. Настройка свойства layout:gravity компонента TextView........................107
2.5.10. Настройка свойства layout:weight компонента TextView......................108
2.5.11. Добавление компонента ImageView для вывода изображения...........110
2.5.12. Предварительный просмотр.............................................................................113
2.6. Выполнение приложения Welcome..............................................................................115
2.7. Обеспечение доступности приложения.....................................................................115
2.8. Интернационализация приложения............................................................................117
2.8.1. Локализация............................................................................................................117
2.8.2. Имена папок с локализованными ресурсами...............................................117
2.8.3. Добавление папки локализации в проект приложения............................118
2.8.4. Локализация строк................................................................................................118
2.8.5. Тестирование приложения с испанской локализацией в AVD...............119
2.8.6. Тестирование приложения с испанской локализацией
на устройстве......................................................................................................................121
2.8.7. TalkBack и локализация.......................................................................................122
2.8.8. Контрольный список локализации..................................................................122
2.8.9. Профессиональный перевод...............................................................................122
2.9. Резюме....................................................................................................................................122
Глава 3. Приложение Tip Calculator....................................................124
3.1. Введение................................................................................................................................125
3.2. Тестирование приложения Tip Calculator.................................................................126
3.3. Обзор применяемых технологий..................................................................................127
3.3.1. Класс Activity..........................................................................................................127
3.3.2. Методы жизненного цикла активности..........................................................128
3.3.3. Библиотека AppCompat и класс AppCompatActivity................................129
3.3.4. Построение представления с использованием компонента
GridLayout...........................................................................................................................130
3.3.5. Создание и настройка графического интерфейса.......................................130
3.3.6. Форматирование чисел в соответствии с локальным контекстом.......131
3.3.7. Реализация интерфейса TextWatcher для обработки изменений в компоненте EditText.....................................................................................................131
3.3.8. Реализация интерфейса OnSeekBarChangeListener для обработки изменения позиции ползунка SeekBar......................................................................131
3.3.9. Материальные темы..............................................................................................131
3.3.10. Материальный дизайн: рельеф и тени..........................................................132
3.3.11. Материальный дизайн: цвета...........................................................................133
3.3.12. AndroidManifest.xml............................................................................................134
3.3.13. Поиск в окне свойств..........................................................................................134
3.4. Построение графического интерфейса приложения.............................................134
3.4.1. Основы GridLayout................................................................................................134
3.4.2. Создание проекта TipCalculator........................................................................136
3.4.3. Переключение на GridLayout............................................................................136
3.4.4. Добавление компонентов TextView, EditText, SeekBar
и LinearLayout....................................................................................................................137
3.4.5. Настройка компонентов......................................................................................141
3.5. Тема по умолчанию и настройка цветов темы..........................................................144
3.5.1. Родительские темы................................................................................................144
3.5.2. Настройка цветов темы........................................................................................145
3.5.3. Стили и часто используемые значения свойств..........................................148
3.6. Логика приложения...........................................................................................................149
3.6.1. Команды package и import...................................................................................149
3.6.2. Класс MainActivity................................................................................................151
3.6.3. Переменные класса................................................................................................151
3.6.4. Переопределение метода onCreate класса Activity....................................152
3.6.5. Метод calculate класса MainActivity...............................................................155
3.6.6. Анонимный внутренний класс, реализующий интерфейс OnSeekBarChangeListener..............................................................................................156
3.6.7. Анонимный внутренний класс, реализующий интерфейс
TextWatcher.........................................................................................................................157
3.7. Файл AndroidManifest.xml..............................................................................................159
3.7.1. Элемент manifest.....................................................................................................160
3.7.2. Элемент application................................................................................................160
3.7.3. Элемент activity......................................................................................................160
3.7.4. Элемент intent-filter..............................................................................................161
3.8. Резюме....................................................................................................................................163
Глава 4. Приложение Flag Quiz............................................................165
4.1. Введение................................................................................................................................166
4.2. Тестирование приложения Flag Quiz..........................................................................167
4.2.1. Настройка викторины..........................................................................................168
4.2.2. Ответы на вопросы викторины.........................................................................170
4.3. Обзор применяемых технологий..................................................................................172
4.3.1. Меню...........................................................................................................................172
4.3.2. Фрагменты................................................................................................................173
4.3.3. Методы жизненного цикла фрагментов.........................................................174
4.3.4. Управление фрагментами....................................................................................174
4.3.5. Объекты Preference................................................................................................175
4.3.6. Папка assets..............................................................................................................175
4.3.7. Папки ресурсов.......................................................................................................176
4.3.8. Поддержка разных размеров экранов и разрешений.................................177
4.3.9. Определение размера экрана..............................................................................177
4.3.10. Вывод временных сообщений.........................................................................178
4.3.11. Использование обработчика для планирования
будущих операций............................................................................................................178
4.3.12. Применение анимации к компонентам........................................................178
4.3.13. Использование ViewAnimationUtils для создания анимации.............179
4.3.14. Список цветов состояний..................................................................................179
4.3.15. Окна AlertDialog...................................................................................................179
4.3.16. Регистрация сообщений....................................................................................180
4.3.17. Запуск другой активности с использованием явного интента............180
4.3.18. Структуры данных Java.....................................................................................181
4.3.19. Особенности Java SE 7.......................................................................................182
4.3.20. AndroidManifest.xml............................................................................................183
4.4. Создание проекта, файлов ресурсов и дополнительных классов......................183
4.4.1. Создание проекта...................................................................................................183
4.4.2. Шаблон Blank Activity.........................................................................................184
4.4.3. Настройка поддержки Java SE 7.......................................................................185
4.4.4. Добавление изображений флагов в проект...................................................185
4.4.5. Файл strings.xml и ресурсы форматных строк.............................................186
4.4.6. arrays.xml...................................................................................................................187
4.4.7. colors.xml....................................................................................................................189
4.4.8. button_text_color.xml............................................................................................190
4.4.9. Редактирование файла menu_main.xml..........................................................191
4.4.10. Создание анимации "качающегося" флага.................................................192
4.4.11. Определение конфигурации приложения в файле preferences.xml...194
4.4.12. Добавление классов SettingsActivity и SettingsActivityFragment в проект.................................................................................................................................196
4.5. Построение графического интерфейса.......................................................................197
4.5.1. Макет activity_main.xml для устройств в портретной ориентации......197
4.5.2. Создание макета fragment_main.xml................................................................198
4.5.3. Панель инструментов макетного редактора.................................................204
4.5.4. Макет content_main.xml для планшетов в альбомной ориентации......205
4.6. Класс MainActivity............................................................................................................207
4.6.1. Команды package, import и переменные экземпляров...............................208
4.6.2. Поля............................................................................................................................208
4.6.3. Переопределение метода onCreate...................................................................209
4.6.4. Переопределение метода onStart......................................................................211
4.6.5. Переопределение метода onCreateOptionsMenu........................................212
4.6.6. Переопределение метода onOptionsItemSelected.......................................213
4.6.7. Анонимный внутренний класс, реализующий интерфейс OnSharedPreferenceChangeListener............................................................................213
4.7. Класс MainActivityFragment..........................................................................................215
4.7.1. Команды package и import...................................................................................216
4.7.2. Поля............................................................................................................................216
4.7.3. Переопределение метода onCreateView.........................................................218
4.7.4. Метод updateGuessRows......................................................................................220
4.7.5. Метод updateRegions.............................................................................................221
4.7.6. Метод resetQuiz.......................................................................................................222
4.7.7. Метод loadNextFlag...............................................................................................223
4.7.8. Метод getCountryName........................................................................................226
4.7.9. Метод animate..........................................................................................................226
4.7.10. Анонимный внутренний класс, реализующий интерфейс OnClickListener..................................................................................................................228
4.7.11. Метод disableButtons..........................................................................................231
4.8. Класс SettingsActivity.......................................................................................................231
4.9. Класс SettingsActivityFragment....................................................................................232
4.10. AndroidManifest.xml........................................................................................................233
4.11. Резюме.................................................................................................................................235
Глава 5. Приложение Doodlz................................................................237
5.1. Введение................................................................................................................................238
5.2. Тестирование приложения Doodlz на виртуальном устройстве AVD.............239
5.3. Обзор применяемых технологий..................................................................................245
5.3.1. Методы жизненного цикла активности и фрагмента................................245
5.3.2. Пользовательские представления....................................................................246
5.3.3. Использование SensorManager для прослушивания событий акселерометра.....................................................................................................................246
5.3.4. Пользовательские реализации DialogFragment..........................................246
5.3.5. Рисование с использованием Canvas, Paint и Bitmap................................247
5.3.6. Обработка событий многоточечных касаний и хранение данных
линий в объектах Path.....................................................................................................248
5.3.7. Сохранение данных на устройстве...................................................................248
5.3.8. Поддержка печати и класс PrintHelper из Android Support Library....249
5.3.9. Новая модель разрешения Android 6.0 (Marshmallow)............................249
5.3.10. Добавление зависимостей с использованием системы
сборки Gradle......................................................................................................................250
5.4. Создание проекта и ресурсов.........................................................................................250
5.4.1. Создание проекта...................................................................................................250
5.4.2. Gradle: добавление библиотеки поддержки в проект................................250
5.4.3. Файл strings.xml......................................................................................................251
5.4.4. Импортирование значков для команд меню.................................................252
5.4.5. Меню MainActivityFragment..............................................................................253
5.4.6. Добавление разрешения в файл AndroidManifest.xml..............................255
5.5. Построение графического интерфейса.......................................................................256
5.5.1. Макет content_main.xml для MainActivity....................................................256
5.5.2. Макет fragment_main.xml для MainActivityFragment...............................256
5.5.3. Макет fragment_color.xml для фрагмента ColorDialogFragment...........257
5.5.4. Макет fragment_line_width.xml для фрагмента LineWidthDialogFragment..............................................................................................261
5.5.5. Добавление класса EraseImageDialogFragment...........................................262
5.6. Класс MainActivity............................................................................................................263
5.7. Класс MainActivityFragment..........................................................................................264
5.7.1. Команды package, import и переменные экземпляров...............................264
5.7.2. Переопределение метода onCreateView.........................................................265
5.7.3. Методы onResume и enableAccelerometerListening....................................266
5.7.4. Методы onPause и disableAccelerometerListening.......................................267
5.7.5. Анонимный внутренний класс для обработки событий
акселерометра.....................................................................................................................268
5.7.6. Метод confirmErase................................................................................................270
5.7.7. Переопределение методов onCreateOptionsMenu и onOptionsItemSelected.................................................................................................270
5.7.8. Метод saveImage.....................................................................................................272
5.7.9. Переопределенный метод onRequestPermissionsResult............................274
5.7.10. Методы getDoodleView и setDialogOnScreen............................................274
5.8. Класс DoodleView..............................................................................................................275
5.8.1. Команды package и import...................................................................................275
5.8.2. Статические переменные и переменные экземпляров DoodleView.....276
5.8.3. Конструктор doodleview......................................................................................277
5.8.4. Переопределенный метод onSizeChanged.....................................................277
5.8.5. Методы clear, setDrawingColor, getDrawingColor, setLineWidth и getLineWidth....................................................................................................................278
5.8.6. Переопределенный метод onDraw...................................................................279
5.8.7. Переопределенный метод onTouchEvent.......................................................280
5.8.8. Метод touchStarted................................................................................................281
5.8.9. Метод touchMoved.................................................................................................282
5.8.10. Метод touchEnded...............................................................................................283
5.8.11. Метод saveImage...................................................................................................284
5.8.12. Метод printImage..................................................................................................285
5.9. Класс ColorDialogFragment............................................................................................286
5.9.1. Переопределенный метод onCreateDialog класса DialogFragment......287
5.9.2. Метод getDoodleFragment...................................................................................288
5.9.3. Переопределенные методы onAttach и onDetach жизненного
цикла фрагмента................................................................................................................288
5.9.4. Анонимный внутренний класс, реализующий интерфейс OnSeekBarChangeListener для обработки событий
компонентов SeekBar ......................................................................................................289
5.10. Класс LineWidthDialogFragment................................................................................290
5.10.1. Метод onCreateDialog........................................................................................292
5.10.2. Анонимный внутренний класс для обработки событий
widthSeekBar.......................................................................................................................293
5.11. Класс EraseImageDialogFragment...............................................................................293
5.12. Резюме.................................................................................................................................295
Глава 6. Приложение Cannon Game....................................................297
6.1. Введение................................................................................................................................298
6.2. Тестирование приложения Cannon Game..................................................................299
6.3. Обзор применяемых технологий..................................................................................299
6.3.1. Использование папки ресурсов res/raw.........................................................299
6.3.2. Методы жизненного цикла активности и фрагмента................................300
6.3.3. Переопределение метода onTouchEvent класса View................................300
6.3.4. Добавление звука с помощью SoundPool и AudioManager.....................300
6.3.5. Покадровая анимация с помощью потоков, SurfaceView и SurfaceHolder...................................................................................................................301
6.3.6. Простое обнаружение столкновений..............................................................301
6.3.7. Режим погружения................................................................................................302
6.4. Создание графического интерфейса приложения и файлов ресурсов............302
6.4.1. Создание проекта...................................................................................................303
6.4.2. Настройка темы для удаления заголовка и панели приложения..........303
6.4.3. Файл strings.xml......................................................................................................304
6.4.4. Цвета...........................................................................................................................304
6.4.5. Добавление звуков в приложение....................................................................304
6.4.6. Добавление класса MainActivityFragment....................................................305
6.4.7. Редактирование файла activity_main.xml......................................................305
6.4.8. Добавление CannonView в макет fragment_main.xml................................306
6.5. Классы приложения..........................................................................................................307
6.6. Класс MainActivity............................................................................................................307
6.7. Класс MainActivityFragment..........................................................................................308
6.8. Класс GameElement...........................................................................................................309
6.8.1. Поля и конструктор...............................................................................................310
6.8.2. Методы update, draw и playSound....................................................................311
6.9. Класс Blocker.......................................................................................................................311
6.10. Класс Target........................................................................................................................312
6.11. Класс Cannon.....................................................................................................................313
6.11.1. Поля и конструктор............................................................................................313
6.11.2. Метод align.............................................................................................................314
6.11.3. Метод fireCannonball..........................................................................................314
6.11.4. Метод draw.............................................................................................................315
6.11.5. Методы getCannonball и removeCannonball...............................................316
6.12. Класс Cannonball..............................................................................................................317
6.12.1. Поля и конструктор............................................................................................317
6.12.2. Методы getRadius, collidesWith, isOnScreen и reverseVelocityX..........317
6.12.3. Метод update..........................................................................................................319
6.12.4. Метод draw.............................................................................................................319
6.13. Класс CannonView Subclass..........................................................................................320
6.13.1. Команды package и import.................................................................................320
6.13.2. Поля и константы................................................................................................320
6.13.3. Конструктор...........................................................................................................322
6.13.4. Переопределение метода onSizeChanged класса View............................324
6.13.5. Методы getScreenWidth, getScreenHeight и playSound..........................325
6.13.6. Метод newGame....................................................................................................325
6.13.7. Метод updatePositions........................................................................................328
6.13.8. Метод alignAndFireCannonball........................................................................329
6.13.9. Метод showGameOverDialog...........................................................................330
6.13.10. Метод drawGameElements..............................................................................331
6.13.11. Метод testForCollisions....................................................................................332
6.13.12. Методы stopGame и releaseResources..........................................................334
6.13.13. Реализация методов SurfaceHolder.Callback............................................334
6.13.14. Переопределение метода onTouchEvent....................................................335
6.13.15. Поток CannonThread: использование потока для создания
цикла игры...........................................................................................................................336
6.13.16. Методы hideSystemBars и showSystemBars..............................................338
6.14. Резюме.................................................................................................................................339
Глава 7. Приложение WeatherViewer..................................................341
7.1. Введение................................................................................................................................342
7.2. Тестирование приложения WeatherViewer...............................................................343
7.3. Обзор применяемых технологий..................................................................................343
7.3.1. Веб-сервисы..............................................................................................................343
7.3.2. Формат JSON и пакет org.json...........................................................................346
7.3.3. HttpUrlConnection и обращение
к REST-совместимым веб-сервисам...........................................................................348
7.3.4. Использование AsyncTask для обработки сетевых запросов
вне потока GUI...................................................................................................................348
7.3.5. ListView, ArrayAdapter и паттерн View-Holder............................................349
7.3.6. FloatingActionButton............................................................................................350
7.3.7. Компонент TextInputLayout...............................................................................351
7.3.8. Компонент Snackbar..............................................................................................351
7.4. Создание графического интерфейса приложения и файлов ресурсов............352
7.4.1. Создание проекта...................................................................................................352
7.4.2. AndroidManifest.xml..............................................................................................352
7.4.3. strings.xml..................................................................................................................353
7.4.4. colors.xml....................................................................................................................353
7.4.5. activity_main.xml....................................................................................................354
7.4.6. content_main.xml....................................................................................................354
7.4.7. list_item.xml..............................................................................................................355
7.5. Класс Weather......................................................................................................................358
7.5.1. Команды package, import и переменные экземпляров...............................358
7.5.2. Конструктор.............................................................................................................359
7.5.3. Метод convertTimeStampToDay........................................................................360
7.6. Класс WeatherArrayAdapter............................................................................................361
7.6.1. Команды package и import...................................................................................361
7.6.2. Вложенный класс ViewHolder...........................................................................362
7.6.3. Переменные экземпляров и конструктор......................................................362
7.6.4. Переопределенный метод getView...................................................................363
7.6.5. Субкласс AsyncTask для загрузки изображений
в отдельном потоке...........................................................................................................365
7.7. Класс MainActivity............................................................................................................367
7.7.1. Команды package и import класса MainActivity..........................................367
7.7.2. Переменные экземпляров...................................................................................368
7.7.3. Переопределенный метод onCreate.................................................................368
7.7.4. Методы dismissKeyboard и createURL............................................................370
7.7.5. Субкласс AsyncTask для обращения к веб-сервису....................................371
7.7.6. Метод convertJSONtoArrayList.........................................................................373
7.8. Резюме....................................................................................................................................374
Глава 8. Приложение Twitter® Searches............................................376
8.1. Введение................................................................................................................................377
8.2. Тестирование приложения..............................................................................................378
8.2.1. Добавление нового запроса.................................................................................379
8.2.2. Просмотр результатов поиска............................................................................380
8.2.3. Редактирование запроса......................................................................................381
8.2.4. Пересылка запроса.................................................................................................382
8.2.5. Удаление запроса....................................................................................................384
8.2.6. Прокрутка списка сохраненных запросов.....................................................385
8.3. Обзор применяемых технологий..................................................................................386
8.3.1. Хранение пар "ключ-значение" в файле SharedPreferences.................386
8.3.2. Неявные интенты и выбор интентов...............................................................386
8.3.3. RecyclerView............................................................................................................387
8.3.4. RecyclerView.Adapter и RecyclerView.ViewHolder......................................388
8.3.5. RecyclerView.ItemDecoration..............................................................................388
8.3.6. Отображение списка команд в AlertDialog...................................................388
8.4. Создание графического интерфейса приложения и файлов ресурсов............389
8.4.1. Создание проекта...................................................................................................389
8.4.2. AndroidManifest.xml..............................................................................................389
8.4.3. Добавление библиотеки RecyclerView...........................................................389
8.4.4. colors.xml....................................................................................................................390
8.4.5. strings.xml..................................................................................................................390
8.4.6. arrays.xml...................................................................................................................391
8.4.7. dimens.xml.................................................................................................................391
8.4.8. Добавление значка для кнопки сохранения.................................................391
8.4.9. activity_main.xml....................................................................................................392
8.4.10. сontent_main.xml..................................................................................................393
8.4.11. Макет элемента RecyclerView: list_item.xml..............................................396
8.5. Класс MainActivity............................................................................................................397
8.5.1. Команды package и import...................................................................................397
8.5.2. Поля MainActivity..................................................................................................398
8.5.3. Переопределенный метод onCreate.................................................................399
8.5.4. Обработчик событий TextWatcher и метод updateSaveFAB....................402
8.5.5. Слушатель OnClickListener................................................................................403
8.5.6. Метод addTaggedSearch........................................................................................404
8.5.7. Анонимный внутренний класс, реализующий View.OnClickListener
для вывода результатов поиска....................................................................................405
8.5.8. Анонимный внутренний класс, реализующий интерфейс View.OnLongClickListener для пересылки, изменения и удаления запросов.........406
8.5.9. Метод shareSearch..................................................................................................408
8.5.10. Метод deleteSearch..............................................................................................410
8.6. Класс SearchesAdapter......................................................................................................411
8.6.1. Команды package, import, переменные экземпляров и конструктор....411
8.6.2. Вложенный класс ViewHolder...........................................................................412
8.6.3. Переопределенные методы RecyclerView.Adapter......................................413
8.7. Класс ItemDivider...............................................................................................................414
8.8. Fabric: новая платформа мобильной разработки....................................................416
8.9. Резюме....................................................................................................................................416
Глава 9. Приложение Address Book.....................................................418
9.1. Введение................................................................................................................................419
9.2. Тестирование приложения Address Book...................................................................420
9.2.1. Добавление контакта.............................................................................................421
9.2.2. Просмотр контакта................................................................................................422
9.2.3. Изменение контакта..............................................................................................422
9.2.4. Удаление контакта.................................................................................................423
9.3. Обзор применяемых технологий..................................................................................423
9.3.1. Отображение фрагментов с использованием FragmentTransaction.....424
9.3.2. Передача данных между фрагментом и управляющей
активностью........................................................................................................................424
9.3.3. Работа с базой данных SQLite...........................................................................425
9.3.4. Классы ContentProvider и ContentResolver..................................................425
9.3.5. Loader и LoaderManager - асинхронные операции
с базами данных.................................................................................................................426
9.3.6. Определение и применение стилей к компонентам GUI.........................427
9.3.7. Определение фона для компонентов TextView...........................................428
9.4. Создание графического интерфейса пользователя и файлов ресурсов..........428
9.4.1. Создание проекта...................................................................................................428
9.4.2. Создание классов приложения..........................................................................428
9.4.3. Добавление значков...............................................................................................430
9.4.4. strings.xml..................................................................................................................430
9.4.5. styles.xml....................................................................................................................431
9.4.6. Файл textview_border.xml...................................................................................432
9.4.7. Макет MainActivity...............................................................................................433
9.4.8. Макет ContactsFragment......................................................................................435
9.4.9. Макет DetailFragment...........................................................................................436
9.4.10. Макет AddEditFragment....................................................................................437
9.4.11. Меню DetailFragment.........................................................................................439
9.5. Обзор классов этой главы...............................................................................................440
9.6. Класс DatabaseDescription..............................................................................................441
9.6.1. Статические поля...................................................................................................442
9.6.2. Вложенный класс Contact...................................................................................442
9.7. Класс AddressBookDatabaseHelper..............................................................................443
9.8. Класс AddressBookContentProvider............................................................................445
9.8.1. Поля AddressBookContentProvider..................................................................445
9.8.2. Переопределенные методы onCreate и getType...........................................447
9.8.3. Переопределенный метод query........................................................................448
9.8.4. Переопределенный метод insert........................................................................451
9.8.5. Переопределенный метод update......................................................................452
9.8.6. Переопределенный метод delete.......................................................................454
9.9. Класс MainActivity............................................................................................................455
9.9.1. Суперкласс, реализованные интерфейсы и поля........................................455
9.9.2. Переопределенный метод onCreate класса MainActivity.........................456
9.9.3. Методы ContactsFragment.ContactsFragment..............................................457
9.9.4. Метод displayContact класса MainActivity...................................................458
9.9.5. Метод displayAddEditFragment класса MainActivity................................459
9.9.6. Методы DetailFragment.DetailFragmentListener.........................................460
9.9.7. Метод AddEditFragment.AddEditFragmentListener...................................461
9.10. Класс ContactsFragment................................................................................................462
9.10.1. Суперкласс и реализуемые интерфейсы......................................................462
9.10.2. ContactsFragment.................................................................................................463
9.10.3. Поля..........................................................................................................................463
9.10.4. Переопределенный метод onCreateView.....................................................463
9.10.5. Переопределенные методы onAttach и onDetach.....................................465
9.10.6. Переопределенный метод onActivityCreated.............................................465
9.10.7. Метод updateContactList...................................................................................466
9.10.8. Методы LoaderManager.LoaderCallbacks..................................466
9.11. Класс ContactsAdapter...................................................................................................468
9.12. Класс AddEditFragment.................................................................................................471
9.12.1. Суперкласс и реализуемый интерфейс........................................................471
9.12.2. Интерфейс AddEditFragmentListener...........................................................472
9.12.3. Поля..........................................................................................................................472
9.12.4. Переопределенные методы onAttach, onDetach и onCreateView........473
9.12.5. nameChangedListener и метод updateSaveButtonFAB.............................475
9.12.6. saveContactButtonClicked и метод saveContact........................................476
9.12.7. Методы LoaderManager.LoaderCallbacks..................................478
9.13. Класс DetailFragment.....................................................................................................479
9.13.1. Суперкласс и реализуемый интерфейс........................................................479
9.13.2. Интерфейс DetailFragmentListener...............................................................480
9.13.3. Переменные экземпляров DetailFragment..................................................481
9.13.4. Переопределенные методы onAttach, onDetach и onCreateView........481
9.13.5. Переопределенные методы onCreateOptionsMenu и onOptionsItemSelected.................................................................................................482
9.13.6. Метод deleteContact и фрагмент confirmDelete........................................483
9.13.7. Методы LoaderManager.LoaderCallback...................................484
9.14. Резюме.................................................................................................................................486
Глава 10. Google Play и коммерческие аспекты разработки.............488
10.1. Введение..............................................................................................................................489
10.2. Подготовка приложений к публикации...................................................................489
10.2.1. Тестирование приложения................................................................................490
10.2.2. Лицензионное соглашение...............................................................................490
10.2.3. Значки и метки.....................................................................................................490
10.2.4. Контроль версии приложения.........................................................................492
10.2.5. Лицензирование для управления доступом к платным
приложениям......................................................................................................................492
10.2.6. Маскировка кода..................................................................................................492
10.2.7. Получение закрытого ключа для цифровой подписи.............................492
10.2.8. Снимки экрана......................................................................................................493
10.2.9. Информационный видеоролик.......................................................................494
10.3. Цена приложения: платное или бесплатное?.........................................................495
10.3.1. Платные приложения.........................................................................................496
10.3.2. Бесплатные приложения...................................................................................497
10.4. Монетизация приложений с помощью встроенной рекламы..........................498
10.5. Внутренняя продажа виртуальных товаров...........................................................499
10.6. Регистрация в Google Play............................................................................................501
10.7. Создание учетной записи Google Payments............................................................501
10.8. Отправка приложений в Google Play........................................................................502
10.9. Запуск Play Store из приложения..............................................................................504
10.10. Управление приложениями в Google Play............................................................505
10.11. Другие магазины приложений Android.................................................................505
10.12. Другие популярные платформы мобильных приложений
и портирование.........................

С этой книгой чаще всего покупают:
Android. Программирование для профессионалов. 3-е издание

Android. Программирование для профессионалов. 3-е издание

Филлипс Б., Стюарт К., Марсикано К.
Год выпуска: 2016
Изд-во: Питер
в корзину
Только на 1 книгу
 
Head First. Программирование для Android. 2-е изд

Head First. Программирование для Android. 2-е изд

Гриффитс Д.
Год выпуска: 2018
Изд-во: Питер
Временно отсутствует Оставить заявку
Цена: 655.00 грн. 
 
Цена: 1138.00 грн. 

Хотите оставить отзыв? У Вас возникли вопросы о книге "Android для разработчиков. 3-е издание, Дейтел П., Дейтел Х." ? Пишите:

* Текст сообщения:
 
  Отправить
Поиск по каталогу
 поиск в аннотациях
Искать

* Подробнее об условиях доставки смотрите в разделе "Оплата и Доставка" нашего магазина.
Если у Вас возникли вопросы как подобрать и купить книги в нашем интернет-магазине звоните с 9 до 18 по будним дням: Киев 331-04-53, Водафон (050) 809-56-66, Киевстар (067) 408-26-36, Лайф (063) 227-24-47, Интертелеком (094) 831-04-53 или пишите нам

 
   
  Programming - Dmitriy Kotov & Andrey Kotov