Создание приложений для смартфонов и планшетных ПК с Google Android

 Руководство разработчика.

A. Голощапов " Google Android. Создание приложений для смартфонов и планшетных ПК " БХВ-Петербург, 2013 год, 832 стр. ил., (44,9 мб pdf)

Создание приложений для Android сейчас стало не только модным но и прибыльным делом. Помочь в этой работе может представленное руководство.

Книга написана для разработчиков приложений для мобильных устройств и планшетных ПК под управлением операционной системы Google Android. Дается исчерпывающая информация о платформе. Собран материал охватывающий различные типы приложений и системных компонентов, а так же служб Android. Поясняются большинство вопросов связанных с сетевыми соединениями и сотовой сетью, мобильным Интернетом и Wi-Fi. Внимательно рассмотрен вопрос использования графических компонентов и режиму создания анимации.

Описаны принципы разработки пользовательского интерфейса и служб. Рассмотрены приемы подключения к приложениям сетевых сервисов Google. Охарактеризован принцип взаимодействия с аппаратными компонентами мобильных устройств Android. В книге демонстрируется большое количество примеров, Книга адресована программистам, создающим приложения под Android.

Оглавление книги

Введение 15
На кого рассчитана эта книга 15
Краткое описание глав 17
Исходные коды примеров 23
Благодарности 24

ЧАСТЬ I. ОСНОВЫ ANDROID 25

Глава 1. Архитектура и базовые сведения о платформе Android 27
Архитектура Android .27
Уровень ядра 28
Уровень библиотек 28
Dalvik Virtual Machine 29
Уровень каркаса приложений 30
Уровень приложений 30
Как программировать под Android 30
Компоненты Android-приложения 31
Activity 31
Service 31
Broadcast Receiver 31
Content Provider 32
Объекты Intent 32
Резюме 32

Глава 2. Установка и настройка среды разработки 35
Создание среды разработки 35
Установка JDK 36
Установка Eclipse 36
Установка Android SDK 36
Установка Android Development Tools 37
Версии SDK и Android API Level 39
Обзор Android SDK 40
Инструменты для разработки и отладки приложений 41
Создание переменных окружения 42
Android Virtual Device 43
Конфигурирование AVD 43
Сочетания клавиш 48
Неподдерживаемая функциональность 48
Резюме 49

Глава 3. Первое приложение Android 51
Создание проекта в Eclipse 51
Структура проекта .57
Каталоги ресурсов 58
Подкаталог res/layout/ 58
Подкаталоги res/drawable/ 60
Подкаталог res/values/ 60
Файл R.java 61
Файл окна приложения FirstActivity.java 62
Файл AndroidManifestxml 63
Общая структура манифеста 64
Структура элемента 68
Резюме 71

Глава 4. Отладка приложений 73
Отладка в среде Eclipse 73
Использование DDMS 74
Запись в журнал событий 75
Журнал событий Logcat 76
Настройка мобильного устройства Android для отладки приложения 77
Установка режима отладки на мобильном телефоне 77
Установка драйвера USB 78
Взаимодействие устройства Android с DDMS 78
Запуск приложения на мобильном устройстве 79
Резюме 80

ЧАСТЬ II. ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ 81

Глава 5. Компоновка элементов управления 83
Формирование графического интерфейса пользователя 83
Создание компоновки 85
XML-файл компоновки 85
Создание компоновки в Layout Editor 87
Типы компоновок 87
FrameLayout 88
LinearLayout 90
TableLayout 95
RelativeLayout 99
Отладка пользовательского интерфейса с помощью Hierarchy Viewer 101
Резюме 104

Глава 6. Базовые виджеты 105
Текстовые поля 105
TextView 106
EditText 110
Тип ввода текста 112
Режимы отображения клавиатуры 114
Полосы прокрутки 119
Отображение графики — Image View 121
Резюме 123

Глава 7. Командные элементы управления и обработка событий 125
Обработка событий 125
Кнопки и флажки 126
Button 126
RadioButton и RadioGroup 134
CheckBox 136
ToggleButton 139
ImageButton 141
Закладки 143
Динамическое создание элементов управления 147
Резюме 150

Глава 8. Отображение длительно выполняющихся задач 151
Создание фоновых потоков 151
Виджет ProgressBar 152
Расширения класса ProgressBar 155
SeekBar 156
RatingBar 159
Использование системных таймеров и отображение системного времени 162
Резюме 166

Глава 9. Уведомления 167
Всплывающие уведомления 167
Создание уведомлений с заданной компоновкой 170
Резюме 174

Глава 10. Диалоговые окна 175
Типы диалогов 175
Создание диалоговых окон 176
AlertDialog 177
AlertDialog с кнопками 177
Добавление в AlertDialog значка и заголовка 180
AlertDialog со списком 181
AlertDialog с переключателями 183
AlertDialog с флажками 186
ProgressDialog 189
D at ePickerDialog 193
TimePickerDialog 197
Создание собственных диалогов 200
Резюме 203

Глава 11. Меню 205
Меню выбора опций 205
Меню со значками 210
Расширенное меню 212
Контекстное меню 215
Подменю 219
Добавление флажков и переключателей в меню 222
Резюме 226

Глава 12. Activity 227
Процессы в системе Android 227
Состояния Activity 229
Запуск Activity с использованием объектов Intent 231
Intent-фильтры и запуск заданий 231
Запуск Activity с помощью явного объекта Intent 232
Стек Activity 239
Обмен данными между Activity 240
Вызов Activity из другого приложения 248
Вызов стандартных Activity 250
Резюме 253

Глава 13. Доступ к компонентам через разрешения 255
Вызов Activity с использованием разрешений 255
Установка разрешений в файле манифеста 256
Резюме 259

Глава 14. Фрагменты 261
Классы фрагментов 261
Создание фрагментов 262
Динамическое добавление фрагментов 266
Передача данных между фрагментами 269
DialogFragment 272
Резюме 275

ЧАСТЬ III. РЕСУРСЫ, ГРАФИКА И ОБРАБОТКА ДАННЫХ 277

Глава 15. Использование ресурсов 279
Доступные типы ресурсов 279
Создание ресурсов 280
Ссылки на ресурсы 281
Использование ресурсов в коде программы .281
Загрузка простых типов из ресурсов 282
Загрузка файлов произвольного типа 287
Создание меню в XML 289
Загрузка XML-документов 293
Стили и темы 296
Стили 296
Темы 297
Определение собственных стилей и тем 298
Активы 300
Резюме 304

Глава 16. Файловая система и карта памяти 305
Подключение карты памяти в эмуляторе 305
Файловая система Android 305
Стандартные директории Android 307
Проверка состояния карты памяти 310
Чтение и запись файлов 310
Сохранение и чтение файлов с SD-карты 315
Резюме 324

Глава 17. Адаптеры данных и компоненты для отображения данных 325
Отображение текстовых данных в списках 325
Адаптеры данных 326
ListView 328
Загрузка нескольких источников данных в список 331
Список с единичным и множественным выбором 334
Создание списка с нестандартной компоновкой 336
ListFragment 339
GridView 343
Отображение графики в списках 347
Отображение графики в GridView 347
Загрузка изображений и текста в список 350
Gallery 353
SlidingDrawer 356
Выпадающий список 361
Текстовые поля с автозаполнением 364
AutoCompleteTextView 364
MultiAutoCompleteTextView 367
Резюме 369

Глава 18. База данных SQLite 371
Встроенные базы данных в Android 371
Инструменты для работы с базами данных на Android-телефоне 373
Инструмент sqlite3 373
Использование инструментов сторонних разработчиков для работы с SQLite 374
Создание базы данных: класс SQLiteOpenHelper 375
Резюме 382

Глава 19. Content Provider 383
Создание компонента Content Provider 383
Расширение класса ContentProvider 383
URI 385
Управление базой данных из приложения 386
Чтение данных 387
Добавление записей 388
Обновление записей 389
Удаление записей 389
Декларирование компонента Content Provider в файле манифеста приложения 390
Запросы к Content Provider 391
Чтение возвращаемых значений 391
Позиционирование курсора 392
Добавление записей 393
Изменение записи 393
Удаление записей 393
Клиентское приложение для работы с базой данных 394
Резюме 401

Глава 20. Сохранение пользовательских настроек 403
Пользовательские настройки в Android 403
Доступ к настройкам 404
CheckBoxPreference 405
EditTextPreference 411
ListPreference 413
RingtonePreference 415
PreferenceCategory 417
PreferenceScreen 418
Резюме 421

Глава 21. Локализация приложений 423
Ресурсы, заданные по умолчанию 423
Создание локализованных ресурсов 423
Резюме 426

Глава 22. Графика 427
Объект Dr aw able 427
Создание объектов Drawable в коде программы 428
Класс TransitionDrawable 429
Класс ShapeDrawable 432
Рисование на канве 438
Резюме 441

Глава 23. Создание анимации 443
Tween Animation 443
Создание анимации в XML-файле 444
Элемент 445
Элемент 446
Элемент 446
Элемент 446
Элемент 446
Анимация для графических примитивов 447
Анимация для графических файлов 453
Анимация для группы объектов 456
Frame Animation 461
Создание анимации в XML 461
Создание анимации в коде программы 464
Резюме 467

ЧАСТЬ IV. СИСТЕМНЫЕ СЛУЖБЫ 469

Глава 24. Компонент Service 471
Работа служб в Android 471
Создание службы 472
Вызов службы 473
Доступ к системным и сетевым сервисам 477
Резюме 480

Глава 25. Broadcast Receiver 481
Класс BroadcastReceiver 481
Прослушивание событий компонентом Broadcast Receiver 483
Пример приложения с Broadcast Receiver 484
Пример приложения-передатчика события 486
Резюме 487

Глава 26. Home Screen 489
Обои для домашнего экрана 489
Виджеты для домашнего экрана 491
Создание виджета 491
Установка виджета 495
Удаление виджета 495
Работа с классом AppWidgetProvider 495
Резюме 499

Глава 27. Уведомления в строке состояния 501
Менеджер уведомлений 501
Создание уведомления 502
Резюме 507

Глава 28. Action Ваг 509
Управление видимостью Action Ваг 509
Добавление опций меню в Action Ваг 512
Добавление текста в меню 515
Резюме 516

Глава 29. Служба оповещений 517
Менеджер оповещений 517
Использование оповещений 518
Резюме 524

Г лава 30. Буфер обмена и API для работы с текстом 525
Менеджер буфера обмена 525
Синтез речи на основе текста 528
Резюме 533

ЧАСТЬ V. СЕТЕВЫЕ СЕРВИСЫ 535

Глава 31. Получение информации о телефоне и сети сотовой связи 537
Информация о телефоне 537
Определение типа телефона и сети сотовой связи 537
Определение базовой станции сотовой связи 539
Определение состояния вызова 540
Получение информации о роуминге 540
Использование класса Telephony Manager 540
Доступ к SIM-карте 546
Состояние SIM-карты 547
Доступ к SIM-карте из приложения 547
Перехват изменений состояния параметров телефона 549
Запуск и остановка прослушивания изменений состояния сотовой сети 550
Изменение уровня сигнала 551
Изменение базовой станции сотовой связи 552
Мониторинг состояния подключения к сервису 552
Приложение для прослушивания изменений состояния сотовой сети 553
Использование эмулятора для тестирования приложений 557
Резюме 560

Глава 32. Обработка телефонных вызовов 561
Использование эмулятора для тестирования обработки телефонных вызовов 561
Имитация телефонного вызова из DDMS .561
Имитация телефонного вызова между двумя эмуляторами Android .562
Установка разрешений 564
Использование объектов Intent для создания телефонных вызовов 564
Вызов телефонного абонента из приложения 565
Перехват исходящих звонков 569
Резюме 572

Глава 33. Отправка и получение SMS 573
Использование эмулятора для отправки SMS .573
Отправка SMS из приложения 574
Отправка SMS с данными 576
Деление SMS на фрагменты 576
Установка разрешений для работы SMS 576
Приложение для отправки SMS 577
Структура SMS-сообщения 581
Перехват входящих SMS-сообщений приложением 582
Хранение SMS на мобильном устройстве 585
Доступ к каталогам SMS 585
Доступ к полям SMS-сообщения 590
Резюме 593

Глава 34. Мобильный Интернет 595
Создание сетевых соединений 595
Менеджер сетевых соединений 595
Характеристики мобильной сети 596
Получение информации о сети в приложении 596
Мониторинг сетевого трафика 599
Получение информации о трафике 599
Приложение для мониторинга сетевого трафика 600
Встроенный браузер 601
Виджет WebView 602
Использование виджета WebView 602
Загрузка данных в виджет WebView 605
Сохранение пользовательских настроек .606
Резюме 615

Глава 35. Управление Wi-Fi-соединениями .617
Управление соединением Wi-Fi .617
Менеджер Wi-Fi-соединений 617
Разрешения 618
Состояние соединения 618
Отслеживание состояния соединения 618
Управление подключением Wi-Fi и отслеживание состояния соединения из приложения 620
Управление настройками Wi-Fi-соединения 625
Характеристики соединения 627
IP-адресация 627
Получение информации о сети Wi-Fi в приложении 628
Конфигурация Wi-Fi-соединения 632
Сканирование точек доступа 636
Мониторинг уровня сигнала и скорости передачи данных в приложении 641
Резюме 645

Глава 36. Определение местоположения 647
Использование Google API в эмуляторе 647
Сервисы и провайдеры местоположения 647
Типы провайдеров местоположения 648
Разрешения для работы с провайдерами местоположения 650
Приложение для поиска доступных провайдеров 650
Определение лучшего провайдера 652
Критерии для определения лучшего провайдера .652
Поиск и определение лучшего провайдера в приложении 654
Использование эмулятора Android для тестирования приложений 656
Определение координат 658
Обновление местоположения 658
Приложение для мониторинга изменений координат и состояния провайдера 660
Резюме 662

Глава 37. Сервис Geocoding 663
Использование Geocoding 663
Reverse Geocoding 664
Отображение местоположения на карте 668
Forward Geocoding 672
Резюме 677

Глава 38. Использование карт Google Maps в приложениях 679
Получение ключа Maps API Key 679
Базовые классы 681
Виджет Map View 682
Класс MapActivity 683
Класс MapController 683
Класс GeoPoint 684
Использование MapView в приложении 685
Управление масштабированием карты .690
Добавление маркера 691
Изменение масштаба карты с помощью виджета SeekBar .692
Резюме 698

ЧАСТЬ VI. РАБОТА С ОБОРУДОВАНИЕМ 699

Глава 39. Использование видеокамеры 701
Работа с камерой в приложении 701
Параметры камеры 702
Получение параметров камеры в приложении 702
Поддержка различных режимов камерой 704
Использование объектов Intent для открытия камеры 708
Встраивание камеры в приложения 712
Управление работой камеры 715
Добавление оверлеев 719
Захват изображения 723
Использование автофокуса 728
Резюме 732

Глава 40. Встроенные датчики 733
Библиотека для работы с датчиками 733
Управление датчиками 733
Поиск доступных датчиков на мобильном устройстве 735
Отслеживание изменений, измеряемых датчиками значений 737
Работа с датчиками в приложении 739
Датчик освещенности 739
Датчик расстояния 743
Датчик ориентации 744
Акселерометр 749
Датчик уровня магнитного поля 753
Другие датчики, доступные на мобильных устройствах Android 754
Имитация работы сенсоров для эмулятора Android 755
Резюме 756

Глава 41. Управление дисплеем 757
Программный доступ к дисплею 757
Менеджер окон 757
Параметры дисплея мобильного устройства 757
Управление яркостью экрана 760
Резюме 765

Глава 42. Доступ к аккумуляторной батарее 767
Менеджер источника питания 767
Отображение статистики использования батареи .775
Резюме 776

Глава 43. Управление энергопотреблением телефона 779
Менеджер энергопотребления 779
Управление энергопотреблением и блокировки 779
Резюме 785
Глава 44. Получение информации о системе 787
Класс Activity Manager 787
Информация о конфигурации устройства 793
Информация о системе 797
Доступная память устройства 797
Выполняющиеся процессы .798
Выполняющиеся службы 800
Выполняющиеся задания 801
Последние выполненные задания 802
Процессы в состоянии ошибки 804
Терминал в системе Android 806
Резюме 812
Приложение. Описание электронного архива и установка примеров 813
Электронный архив 813
Установка примеров 813
Предметный указатель 817

 

Скачать книгу бесплатно44,9 мб pdf