Введение ............................................................................................................................ 5
Что вы узнаете из этой книги? ....................................................................................................... 7
Что нужно знать? ............................................................................................................................. 8
Основные термины и понятия ........................................................................................................ 8
Об авторе .......................................................................................................................................... 9
Глава 1. Освоение интегрированной среды разработки (IDE) .............................................................. 11
Знакомство с Visual Studio Community ........................................................................................ 11
Содержание проекта ...................................................................................................................... 12
Ресурсы приложения ..................................................................................................................... 13
Проектирование экранных форм .................................................................................................. 15
Редактор кода ................................................................................................................................. 16
Приложение HelloWorld................................................................................................................ 17
Локализация приложений ............................................................................................................. 21
Принципы работы приложения и основы архитектуры ............................................................. 23
Описание исходного кода ............................................................................................................. 26
Тестирование и отладка приложения .......................................................................................... 29
Глава 2. Работа с Activity ........................................................................................................... 31
Жизненный цикл приложения ...................................................................................................... 31
Управление жизненным циклом .................................................................................................. 35
Атрибут [Activity] и основные свойства активности .................................................................. 38
Намерения и передача данных между Activity ........................................................................... 41
Получение результата из Activity ................................................................................................. 46
Сохранение настроек Activity ....................................................................................................... 52
Взаимодействие между Activity ................................................................................................... 54
Передача данных между Activity через статические переменные ................................................... 56
Диалоговые Activity ...................................................................................................................... 57
Глава 3. Выбор и использование управляющих компонентов ............................................................. 60
Layouts в Android ........................................................................................................................... 60
Контейнер ScrollView .................................................................................................................... 67
Элемент TextView ........................................................................................................................... 67
Элемент EditText ............................................................................................................................ 68
Элемент Button ............................................................................................................................... 69
Элемент Checkbox .......................................................................................................................... 78
Элемент RadioButton ..................................................................................................................... 78
Элемент SeekBar ............................................................................................................................ 79
Элемент ImageView ........................................................................................................................ 86
Анимация свойств ......................................................................................................................... 91
Адаптеры и списки ........................................................................................................................ 94
Выбор даты и времени ................................................................................................................ 109
Создание меню ............................................................................................................................. 110
Элемент Toolbar ........................................................................................................................... 116
Контекстная панель действий .................................................................................................... 119
Введение во фрагменты .............................................................................................................. 124
Разработка интерфейса в стиле WhatsApp ................................................................................ 128
Использование асинхронных методов ....................................................................................... 135
Элемент SwipeRefreshLayout ....................................................................................................... 140
Создание экранных заставок ...................................................................................................... 142
Перелистывание страниц и ViewPager ...................................................................................... 145
Создание собственных компонентов ......................................................................................... 148
Компоненты построения диаграмм ............................................................................................ 151
Создание интерфейса в стиле Gmail .......................................................................................... 156
Глава 4. Запись и чтение данных ............................................................................................... 165
Чтение и сохранение файлов ...................................................................................................... 165
Основы работы с SQLite ............................................................................................................. 174
Добавление, удаление и обновление данных в SQLite ............................................................ 182
Динамический поиск по базе данных SQLite ............................................................................ 188
Глава 5. Работа с веб-сервисами ................................................................................................ 194
Введение в веб-сервисы .............................................................................................................. 194
Веб-службы ASP.NET (ASMX) .................................................................................................. 195
Использование служб RESTful ................................................................................................... 207
Глава 6. Обзор основных функций ................................................................................................ 219
Телефонные звонки ..................................................................................................................... 219
Отправка СМС ............................................................................................................................. 222
Работа с контактами .................................................................................................................... 226
Определение местоположения ................................................................................................... 235
Захват изображения и работа с камерой .................................................................................... 240
Распознавание речи ..................................................................................................................... 248
Введение в сервисы ..................................................................................................................... 252
Широковещательные приёмники ............................................................................................... 257
Уведомления ................................................................................................................................ 261
Разработка сканера кассовых чеков ........................................................................................... 264
Оптическое распознавание символов ........................................................................................ 270
Разработка экранных виджетов .................................................................................................. 276
Вывод данных на печать ............................................................................................................. 284
Компонент ShortcutBadger .......................................................................................................... 289
Использование диспетчера оповещений ................................................................................... 290
Отслеживание телефонных звонков .......................................................................................... 293
Глава 7. Сборка и распространение приложений ........................................................................ 305
Создание подписанного apk ....................................................................................................... 305
Публикация приложения в Play Market ..................................................................................... 311
Монетизация мобильных приложений ...................................................................................... 314
Заключение ........................................................................................................................... 329
Предметный указатель ............................................................................................................ 332
Рассмотрены особенности создания Android-приложений при помощи Visual Studio Community на C#. Книга знакомит читателя со структурой проектов Xamarin.Android, с особенностями сборки и отладки приложений. Рассматриваются основные подходы к разработке Android-приложений, методы построения интерфейса, хранения данных, показана интеграция мобильных приложений с веб-службами, описаны особенности распространения и публикации приложений в магазине Google Play, разобраны основные методы монетизации мобильного контента. Представлены многочисленные примеры кода для решения различных задач, который можно использовать в своих приложениях.
Для начинающих разработчиков
Язык программирования C# — одно из самых популярных средств разработки. Многие уже владеют приемами программирования на базе технологий Microsoft, и эти навыки можно с успехом использовать при создании мобильных приложений для платформы Android. Изучение платформы Xamarin.Android дает возможность внедрять и развивать свои мобильные сервисы с использованием технологического стека Microsoft.
Вы узнаете:
использовать интегрированную среду разработки IDE;
работать с Activity;
выбирать и использовать управляющие элементы;
записывать и считывать данные;
взаимодействовать с веб-сервисами и средствами коммуникаций;
собирать написанные на С# мобильные приложения;
публиковать приложения в Google Play.