Главная » 2016»Февраль»11 » Android NDK. Разработка приложений под Android на C и C++
00:32
Android NDK. Разработка приложений под Android на C и C++
Android NDK. Разработка приложений под Android на C и C++ — В книге показано, как создавать мобильные приложения для платформы Android на языке C и C++ с использованием пакета библиотек Android Native Development Kit (NDK) и объединять их с программным кодом на языке Java. Вы узнаете как создать первое низкоуровневое приложение для Android, как взаимодействовать с программным кодом на Java посредством механизма Java Native Interfaces, как соединить в своем приложении вывод графики и звука, обработку устройств ввода и датчиков, как отображать графику с помощью библиотеки OpenGL ES и др. Издание предназначено для разработчиков мобильных приложений, как начинающих, так и более опытных, уже знакомых с программированием под Android с использованием Android SDK.
Название: Android NDK. Разработка приложений под Android на C и C++ Автор: Сильвен Ретабоуил Издательство: ДМК Пресс Год: 2012 Страниц: 496 Формат: PDF, DJVU, FB2, EPUB, MOBI Размер: 27,0 Мб ISBN: 978-5-94074-657-7 Качество: Отличное Язык: Русский
Содержание:
Об авторе О рецензентах Предисловие Глава 1. Подготовка окружения Приступая к разработке программ для Android Настройка в Windows Время действовать - подготовка Windows для разработки на платформе Android Установка инструментов разработки для Android в Windows Время действовать - установка Android SDK и NDK в Windows Настройка в Mac OS X Время действовать - подготовка Mac OS X для разработки на платформе Android Установка инструментов разработки для Android в Mac OS X Время действовать - установка Android SDK и NDK в Mac OS X Настройка в Linux Время действовать - подготовка Ubuntu Linux для разработки на платформе Android Установка инструментов разработки для Android в Linux Время действовать - установка Android SDK и NDK в Ubuntu Настройка среды разработки Eclipse Время действовать - установка Eclipse Эмулятор платформы Android Время действовать - создание виртуального устройства на платформе Android Вперед, герои! Разработка с действующим устройством на платформе Android в Windows и Mac OS X Время действовать - подключение действующего устройства на платформе Android в Windows и Mac OS X Разработка с действующим устройством на платформе Android в Linux Время действовать - подключение действующего устройства на платформе Android в Ubuntu Устранение проблем подключения устройства В заключение Глава 2. Создание, компиляция и развертывание проектов Компиляция и развертывание примеров приложений из комплекта Android NDK Время действовать - компиляция и развертывание примера hellojni Вперед, герои - компиляция демонстрационного приложения san angeles OpenGL Исследование инструментов Android SDK Android Debug Bridge Вперед, герои - запись файла на SD-карту из командной строки Инструмент настройки проекта Вперед, герои - к непрерывной интеграции Создание первого проекта приложения для Android с помощью Eclipse Время действовать - создание проекта на Java Введение в Dalvik Взаимодействие Java и C/C++ Время действовать - вызов программного кода на языке C из Java Подробнее о файлах Makefile Компиляция низкоуровневого программного кода из Eclipse Время действовать - создание гибридного проекта Java/C/C++ В заключение Глава 3. Взаимодействие Java и C/C++ посредством JNI Работа со значениями простых типов языка Java Время действовать - создание низкоуровневого хранилища Вперед, герои - получение и возврат значений других простых типов Ссылка на Java-объекты из низкоуровневого кода Время действовать - сохранение ссылки на объект Локальные и глобальные ссылки JNI Возбуждение исключений из низкоуровневого кода Время действовать - возбуждение исключений в приложении Store JNI в C++ Обработка Java-массивов Время действовать - сохранение ссылки на объект Проверка исключений JNI Вперед, герои - обработка массивов других типов В заключение Глава 4. Вызов функций на языке Java из низкоуровневого программного кода Синхронизация операций в Java и низкоуровневых потоках выполнения Время действовать - запуск фонового потока выполнения Присоединение и отсоединение потоков выполнения Подробнее о Java и жизненном цикле низкоуровневого кода Обратный вызов Java-методов из низкоуровневого кода Время действовать - вызов Java-методов из низкоуровневого потока выполнения Еще об обратных вызовах Определение методов в механизме JNI Низкоуровневая обработка растровых изображений Время действовать - декодирование видеопотока от встроенной камеры в низкоуровневом коде В заключение Глава 5. Создание исключительно низкоуровневых приложений Создание низкоуровневого визуального компонента Время действовать - создание простейшего низкоуровневого визуального компонента Обработка событий визуального компонента Время действовать - обработка событий в визуальном компоненте Еще о модуле связи android_native_app_glue Вперед, герои - сохранение состояния визуального компонента Доступ к окну и получение времени из низкоуровневого кода Время действовать - отображение простой графики и реализация таймера Еще о функциях для работы со временем В заключение Глава 6. Отображение графики средствами OpenGL ES Инициализация OpenGL ES Время действовать - инициализация OpenGL ES Чтение текстур в формате PNG с помощью диспетчера ресурсов Время действовать - загрузка текстуры в OpenGL ES Рисование спрайта Время действовать - рисование спрайта корабля Отображение мозаичных изображений с помощью объектов вершинных буферов Время действовать - рисование мозаичного фона В заключение Глава 7. Проигрывание звука средствами OpenSL ES Инициализация OpenSL ES Время действовать - создание механизма на основе OpenSL ES и вывод звука Еще о философии OpenSL ES Воспроизведение музыкальных файлов Время действовать - воспроизведение музыки в фоне Воспроизведение звуков Время действовать - создание и воспроизведение очереди звуковых буферов Обработка событий Запись звука Вперед, герои - запись и воспроизведение звука В заключение Глава 8. Обслуживание устройств ввода и датчиков Взаимодействие с платформой Android Время действовать - обработка событий прикосновения Обработка событий от клавиатуры, клавиш направления (D-Pad) и трекбола Время действовать - низкоуровневая обработка клавиатуры, клавиш направлений (D-Pad) и трекбола Вперед, герои - отображение виртуальной клавиатуры Проверка датчиков Время действовать - превращение устройства в джойстик Вперед, герои - обработка поворота экрана В заключение Глава 9. Перенос существующих библиотек на платформу Android Разработка с применением стандартной библиотеки шаблонов Время действовать - встраивание библиотеки STLport в DroidBlaster Статическое и динамическое связывания Компиляция Boost на платформе Android Время действовать - встраивание библиотеки Boost в DroidBlaster Вперед, герои - реализация многопоточной модели выполнения с помощью Boost Перенос сторонних библиотек на платформу Android Время действовать - компиляция Box2D и Irrlicht в NDK Уровни оптимизации в GCC Мастерство владения файлами Makefile Переменные в файлах Makefile Инструкции в файлах Makefile Вперед, герои - мастерство владения файлами Makefile В заключение Глава 10. Вперед, к профессиональным играм Моделирование механических взаимодействий физических тел с помощью библиотеки Box2D Время действовать - моделирование механических взаимодействий с помощью Box2D Подробнее об определении столкновений Режимы столкновений Фильтрация столкновений Дополнительные ресурсы, посвященные Box2D Запуск движка трехмерной графики в Android Время действовать - отображение трехмерной графики с помощью Irrlicht Подробнее об управлении сценой в Irrlicht В заключение Глава 11. Отладка и поиск ошибок Отладка с помощью GDB Время действовать - отладка DroidBlaster Анализ информации трассировки стека Время действовать - анализ аварийных дампов Подробнее об аварийных дампах Анализ производительности Время действовать - запуск профилировщика GProf Как он действует Наборы команд ARM, Thumb и NEON В заключение Послесловие Предметный указатель