Android для разработчиков — Более миллиона человек во всем мире воспользовались книгами Дейтелов, чтобы освоить Java, C#, C++, C, веб-программирование, JavaScript, XML, Visual Basic, Visual C++, Perl, Python и другие языки программирования. Майкл Моргано является профессиональным разработчиком Android компании Imerj. Эта книга, выходящая уже во втором издании, даст вам всё, что нужно, для начала разработки приложений для Android и быстрой публикации их на Google Play. Авторы используют приложение-ориентированный подход, при котором описание каждой технологии рассматривается на примере 16 полностью протестированных приложений для Android. Кроме описания процесса создания приложений, в книге дано пошаговое руководство по размещению ваших приложений на Google Play и примеры успешных публикаций. Новое издании книги полностью обновлено и содержит информацию о работе с Android 4.3 и 4.4, разработке на Eclipse и новом Android Studio.
Название: Android для разработчиков Автор: Пол Дейтел, Харви Дейтел, Эби Дейтел, Майк Моргано Издательство: Питер Год: 2015 Страниц: 384 Формат: PDF Размер: 11,0 Мб ISBN: 978-5-496-01517-2 Качество: Отличное Серия или Выпуск: Библиотека программиста Язык: Русский
Содержание:
Предисловие Авторские права и лицензии на код Целевая аудитория Особенности книги Как связаться с авторами книги Благодарности Об авторах Подготовка Требования к аппаратному и программному обеспечению Установка Java Development Kit (JDK) Выбор среды разработки Android 4.3 SDK Создание виртуальных устройств Android (AVD) для использования в эмуляторе Android Настройка устройства Android для разработки Как получить примеры кода Глава 1. Введение в Android 1.1. Введение 1.2. Android - мировой лидер в области мобильных операционных систем 1.3. Особенности Android 1.4. Операционная система Android 1.4.1. Android 2.2 (Froyo) 1.4.2. Android 2.3 (Gingerbread) 1.4.3. Android 3.0-3.2 (Honeycomb) 1.4.4. Android Ice Cream Sandwich 1.4.5. Android 4.1-4.3 (Jelly Bean) 1.4.6. Android 4.4 (KitKat) 1.5. Загрузка приложений из Google Play 1.6. Пакеты 1.7. Android Software Development Kit (SDK) 1.8. Краткий обзор объектно- ориентированного программирования 1.8.1. Автомобиль как объект 1.8.2. Методы и классы 1.8.3. Создание экземпляра класса 1.8.4. Повторное использование 1.8.5. Сообщения и вызовы методов 1.8.6. Атрибуты и переменные экземпляра класса 1.8.7. Инкапсуляция 1.8.8. Наследование 1.8.9. Объектно-ориентированный анализ и проектирование 1.9. Тестирование приложения Doodlz на виртуальном устройстве AVD 1.9.1. Запуск приложения Doodlz на AVD для смартфона Nexus 1.9.2. Запуск Doodlz App на планшетном AVD 1.9.3. Выполнение приложения Doodlz на устройстве Android 1.10. Создание успешных Android-приложений 1.11. Ресурсы для разработчиков 1.12. Резюме Глава 2. Приложение Welcome 2.1. Введение 2.2. Обзор применяемых технологий 2.2.1. Android Developer Tools IDE 2.2.2. TextView и ImageView 2.2.3. Ресурсы приложения 2.2.4. Доступность 2.2.5. Интернационализация 2.3. Создание приложения 2.3.1. Запуск интегрированной среды разработки Android Developer Tools 2.3.2. Создание нового проекта 2.3.3. Диалоговое окно New Android Application 2.3.4. Шаг Configure Project 2.3.5. Шаг Configure Launcher Icon 2.3.6. Шаг Create Activity 2.3.7. Шаг Blank Activity 2.4. Окно Android Developer Tools 2.4.1. Окно Package Explorer 2.4.2. Окна редактора 2.4.3. Окно структуры 2.4.4. Файлы ресурсов приложения 2.4.5. Макетный редактор 2.4.6. Графический интерфейс по умолчанию 2.5. Построение графического интерфейса приложения 2.5.1. Добавление изображений в проект 2.5.2. Изменение свойства Id компонентов RelativeLayout и TextView 2.5.3. Настройка компонента TextView 2.6. Выполнение приложения Welcome 2.7. Обеспечение доступности приложения 2.8. Интернационализация приложения 2.9. Резюме Глава 3. Приложение Tip Calculator 3.1. Введение 3.2. Тестирование приложения Tip Calculator 3.3. Обзор применяемых технологий 3.3.1. Класс Activity 3.3.2. Методы жизненного цикла активности 3.3.3. Построение представления с использованием компонентов LinearLayout и GridLayout 3.3.4. Создание и настройка графического интерфейса 3.3.5. Форматирование чисел в соответствии с локальным контекстом 3.3.6. Реализация интерфейса TextWatcher для обработки изменений в компоненте EditText 3.3.7. Реализация интерфейса OnSeekBarChangeListener для обработки изменения позиции ползунка SeekBar 3.3.8. AndroidManifest. xml 3.4. Построение графического интерфейса приложения 3.4.1. Основы GridLayout 3.4.2. Создание проекта TipCalculator 3.4.3. Переключение на GridLayout 3.4.4. Добавление компонентов TextView, EditText, SeekBar и LinearLayout 3.4.5. Настройка компонентов 3.5. Включение функциональности в приложение 3.6. Файл AndroidManifest. xml 3.7. Резюме Глава 4. Приложение Twitter® Searches 4.1. Введение 4.2. Тестирование приложения 4.2.1. Импортирование и запуск приложения 4.2.2. Добавление нового запроса 4.2.3. Просмотр результатов поиска 4.2.4. Редактирование запроса 4.2.5. Пересылка запроса 4.2.6. Удаление запроса 4.2.7. Прокрутка списка сохраненных запросов 4.3. Обзор применяемых технологий 4.3.1. ListView 4.3.2. ListActivity 4.3.3. Настройка макета ListActivity 4.3.4. ImageButton 4.3.5. SharedPreferences 4.3.6. Интенты запуска других активностей 4.3.7. AlertDialog 4.3.8. Файл AndroidManifest. xml 4.4. Построение графического интерфейса приложения 4.4.1. Создание проекта 4.4.2. Файл activity_main. xml 4.4.3. Добавление GridLayout и других компонентов 4.4.4. Панель инструментов макетного редактора 4.4.5. Макет варианта ListView: list_item. xml 4.5. Построение класса MainActivity 4.5.1. Команды package и import 4.5.2. Расширение ListActivity 4.5.3. Поля класса MainActivity 4.5.4. Переопределение метода активности onCreate 4.5.5. Анонимный внутренний класс, реализующий интерфейс OnClickListener для сохранения нового или измененного запроса 4.5.6. Метод addTaggedSearch 4.5.7. Анонимный внутренний класс, реализующий интерфейс OnItemClickListener класса ListView для отображения результатов поиска 4.5.8. Анонимный внутренний класс, реализующий интерфейс OnItemLongClickListener класса ListView для пересылки, изменения и удаления запросов 4.5.9. Метод shareSearch 4.5.10. Метод deleteSearch 4.6. AndroidManifest.xml 4.7. Резюме Глава 5. Приложение Flag Quiz 5.1. Введение 5.2. Тестирование приложения Flag Quiz 5.2.1. Импортирование и запуск приложения 5.2.2. Настройка викторины 5.2.3. Ответы на вопросы викторины 5.3. Обзор применяемых технологий 5.3.1. Меню 5.3.2. Фрагменты 5.3.3. Методы жизненного цикла фрагментов 5.3.4. Управление фрагментами 5.3.5. Объекты Preference 5.3.6. Папка assets 5.3.7. Папки ресурсов 5.3.8. Поддержка разных размеров экранов и разрешений 5.3.9. Определение размера экрана 5.3.10. Вывод временных сообщений 5.3.11. Использование обработчика для планирования будущих операций 5.3.12. Применение анимации к компонентам 5.3.13. Регистрация исключений с помощью Log.e 5.3.14. Использование явного интента для запуска другой активности в том же приложении 5.3.15. Структуры данных Java 5.4. Построение графического интерфейса и файлов ресурсов 5.4.1. Создание проекта 5.4.2. Файл strings. xml и ресурсы форматных строк 5.4.3. arrays. xml 5.4.4. colors. xml 5.4.5. dimens. xml 5.4.6. Макет activity_settings. xml 5.4.7. Макет activity_main. xml для телефонов и планшетов в портретной ориентации 5.4.8. Макет fragment_quiz. xml 5.4.9. Макет activity_main. xml для планшета в альбомной ориентации 5.4.10. Определение конфигурации приложения в файле preferences. xml 5.4.11. Создание анимации «качающегося» флага 5.5. Класс MainActivity 5.5.1. Команда package, команды import и поля 5.5.2. Переопределение метода onCreate 5.5.3. Переопределение метода onStart 5.5.4. Переопределение метода onCreateOptionsMenu 5.5.5. Переопределение метода onOptionsItemSelected 5.5.6. Анонимный внутренний класс, реализующий интерфейс OnSharedPreferenceChangeListener 5.6. Класс QuizFragment 5.6.1. Команда package и команды import 5.6.2. Поля 5.6.3. Переопределение метода onCreateView 5.6.4. Метод updateGuessRows 5.6.5. Метод updateRegions 5.6.6. Метод resetQuiz 5.6.7. Метод loadNextFlag 5.6.8. Метод getCountryName 5.6.9. Анонимный внутренний класс, реализующий интерфейс OnClickListener 5.6.10. Метод disableButtons 5.7. Класс SettingsFragment 5.8. Класс SettingsActivity 5.9. AndroidManifest. xml 5.10. Резюме Глава 6. Приложение Cannon Game 6.1. Введение 6.2. Тестирование приложения Cannon Game 6.3. Обзор применяемых технологий 6.3.1. Присоединение пользовательского представления к макету 6.3.2. Использование папки ресурсов raw 6.3.3. Методы жизненного цикла активности и фрагмента 6.3.4. Переопределение метода onTouchEvent класса View 6.3.5. Добавление звука с помощью SoundPool и AudioManager 6.3.6. Покадровая анимация с помощью потоков, SurfaceView и SurfaceHolder 6.3.7. Простое обнаружение столкновений 6.3.8. Рисование графики с помощью Paint и Canvas 6.4. Создание графического интерфейса приложения и файлов ресурсов 7.4.1. Создание проекта 6.4.2. Файл strings. xml 6.4.3. Файл fragment_game. xml 6.4.4. Файл activity_main. xml 6.4.5. Добавление звуков в приложение 6.5. Класс Line 6.6. Класс MainActivity 6.7. Класс CannonGameFragment 6.8. Класс CannonView 6.8.1. Команда package и команды import 6.8.2. Переменные экземпляров и константы 6.8.3. Конструктор 6.8.4. Переопределение метода onSizeChanged класса View 6.8.5. Метод newGame 6.8.6. Метод updatePositions 6.8.7. Метод fireCannonball класса CannonView 6.8.8. Метод alignCannon 6.8.9. Метод drawGameElements 6.8.10. Метод showGameOverDialog 6.8.11. Методы stopGame и releaseResources 6.8.12. Реализация методов SurfaceHolder. Callback 6.8.13. Переопределение метода onTouchEvent 6.8.14. Поток CannonThread: использование потока для создания цикла игры 6.9. Резюме Глава 7. Приложение Doodlz 7.1. Введение 7.2. Обзор применяемых технологий 7.2.1. Использование SensorManager для прослушивания событий акселерометра 7.2.2. Пользовательские реализации DialogFragment 7.2.3. Рисование с использованием Canvas и Bitmap 7.2.4. Обработка событий многоточечных касаний и хранение данных линий в объектах Path 7.2.5. Режим погружения Android 7.2.6. GestureDetector и SimpleOnGestureListener 7.2.7. Сохранение рисунка в галерее устройства 7.2.8. Поддержка печати в Android 4.4 и класс PrintHelper из Android Support Library 7.3. Создание графического интерфейса и файлов ресурсов приложения 7.3.1. Создание проекта 7.3.2. Файл strings.xml 7.3.3. Файл dimens.xml 7.3.4. Меню DoodleFragment 7.3.5. Макет activity_main.xml для MainActivity 7.3.6. Файл fragment_doodle.xml для фрагмента DoodleFragment 7.3.7. Макет fragment_color.xml для фрагмента ColorDialogFragment 7.3.8. Макет fragment_line_width.xml для фрагмента LineWidthDialogFragment 7.3.9. Добавление класса EraseImageDialogFragment 7.4. Класс MainActivity 7.5. Класс DoodleFragment 7.6. Класс DoodleView 7.7. Класс ColorDialogFragment 7.8. Класс LineWidthDialogFragment 7.9. Класс EraseImageDialogFragment 7.10. Резюме Глава 8. Приложение Address Book 8.1. Введение 8.2. Тестирование приложения Address Book 8.3. Обзор применяемых технологий 8.3.1. Отображение фрагментов с использованием FragmentTransaction 8.3.2. Передача данных между фрагментом и управляющей активностью 8.3.3. Метод onSaveInstanceState 8.3.4. Определение и применение стилей к компонентам GUI 8.3.5. Определение фона для компонентов TextView 8.3.6. Расширение класса ListFragment для создания фрагмента содержащего ListView 8.3.7. Работа с базой данных SQLite 8.3.8. Выполнение операций с базами данных за пределами потока GUI с использованием AsyncTask 8.4. Создание графического интерфейса пользователя и файлов ресурсов 8.4.1. Создание проекта 8.4.2. Создание классов приложения 8.4.3. Файл strings.xml 8.4.4. Файл styles.xml 8.4.5. Файл textview_border.xml 8.4.6. Файл макета MainActivity: activity_main.xml 8.4.7. Файл макета DetailsFragment: fragment_details.xml 8.4.8. Макет AddEditFragment: fragment_add_edit.xml 8.4.9. Определение меню фрагментов 8.5. Класс MainActivity 8.6. Класс ContactListFragment 8.7. Класс AddEditFragment 8.8. Класс DetailsFragment 8.9. Вспомогательный класс DatabaseConnector 8.10. Резюме Глава 9. Google Play и коммерческие аспекты разработки 9.1. Введение 9.2. Подготовка приложений к публикации 9.2.1. Тестирование приложения 9.2.2. Лицензионное соглашение 9.2.3. Значки и метки 9.2.4. Контроль версии приложения 9.2.5. Лицензирование для управления доступом к платным приложениям 9.2.6. Маскировка кода 9.2.7. Получение закрытого ключа для цифровой подписи 9.2.8. Снимки экрана 9.2.9. Информационный видеоролик 9.3. Цена приложения: платное или бесплатное? 9.3.1. Платные приложения 9.3.2. Бесплатные приложения 9.4. Монетизация приложений с помощью встроенной рекламы 9.5. Внутренняя продажа виртуальных товаров 9.6. Регистрация в Google Play 9.7. Создание учетной записи Google Wallet 9.8. Отправка приложений в Google Play 9.9. Запуск Play Store из приложения 9.10. Управление приложениями в Google Play 9.11. Другие магазины приложений Android 9.12. Другие популярные платформы мобильных приложений 9.13. Маркетинг приложения 9.14. Резюме