Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 637035)
Контекстум
Электро-2024

Android NDK. Руководство для начинающих (3000,00 руб.)

0   0
Первый авторРетабоуил Сильвен
ИздательствоМ.: ДМК Пресс
Страниц519
ID834934
АннотацияВ книге показано, как создавать мобильные приложения для платформы Android на языке C/C++ с использованием пакета библиотек Android Native Development Kit (NDK) и объединять их спрограммным кодом на языке Java. Вы узнаете как создать первое низкоуровневое приложение для Android, как взаимодействовать с программным кодом на Java посредством механизма Java Native Interfaces, как соединить в своем приложении вывод графики и звука, обработку устройств ввода и датчиков, как отображать графику с помощью библиотеки OpenGL ES и др.
Кому рекомендованоИздание предназначено для разработчиков мобильных приложений, как начинающих так и более опытных, уже знакомых с программированием под Android с использованием Android SDK.
ISBN978-5-89818-629-6
УДК004.451.9Android
ББК32.973.26-018.2
Ретабоуил, С. Android NDK. Руководство для начинающих / С. Ретабоуил .— Пер. с англ. А. Н. Киселёва. — 3-е изд., эл. — Москва : ДМК Пресс, 2023 .— 519 с. — 1 файл pdf : 519 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. — ISBN 978-5-89818-629-6 .— URL: https://rucont.ru/efd/834934 (дата обращения: 29.05.2024)

Предпросмотр (выдержки из произведения)

Android_NDK._Руководство_для_начинающих.pdf
Стр.5
Стр.6
Стр.7
Стр.8
Стр.9
Стр.10
Android_NDK._Руководство_для_начинающих.pdf
УДК 004.451.9Android ББК 32.973.26-018.2 Р31 Р31 Ретабоуил, Сильвен. Android NDK. Руководство для начинающих / С. Ретабоуил ; пер. с англ. А. Н. Киселёва. — 3-е изд., эл. — 1 файл pdf : 519 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-629-6 В книге показано, как создавать мобильные приложения для платформы Android на языке C/C++ с использованием пакета библиотек Android Native Development Kit (NDK) и объединять их с программным кодом на языке Java. Вы узнаете как создать первое низкоуровневое приложение для Android, как взаимодействовать с программным кодом на Java посредством механизма Java Native Interfaces, как соединить в своем приложении вывод графики и звука, обработку устройств ввода и датчиков, как отображать графику с помощью библиотеки OpenGL ES и др. Издание предназначено для разработчиков мобильных приложений, как начинающих так и более опытных, уже знакомых с программированием под Android с использованием Android SDK. УДК 004.451.9Android ББК 32.973.26-018.2 Электронное издание на основе печатного издания: Android NDK. Руководство для начинающих / С. Ретабоуил ; пер. с англ. А. Н. Киселёва. — 2-е изд. — Москва : ДМК Пресс, 2016. — 518 с. — ISBN 978-5-97060-394-9. — Текст : непосредственный. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-629-6 © 2015 Packt Publishing © Оформление, ДМК Пресс, 2016
Стр.5
Содержание Об авторе ........................................................ 10 О рецензентах.................................................. 11 Предисловие ................................................... 13 О чем рассказывается в этой книге ............................................... 14 Что потребуется для работы с книгой ............................................ 15 Кому адресована эта книга ............................................................ 15 Разделы ........................................................................................ 16 Соглашения................................................................................... 16 Отзывы и пожелания ..................................................................... 17 Загрузка исходного кода примеров ............................................... 18 Список опечаток............................................................................ 18 Нарушение авторских прав ........................................................... 18 Глава 1. Подготовка окружения ...................................... 19 Приступая к разработке программ для Android .............................. 19 Настройка Windows ....................................................................... 20 Установка инструментов разработки для Android в Windows .......... 26 Настройка Mac OS X ...................................................................... 31 Установка инструментов разработки для Android в Mac OS X ......... 34 Настройка Linux ............................................................................. 40 Установка инструментов разработки для Android в Linux ................ 42 Установка среды разработки Eclipse ............................................. 47 Эмулятор платформы Android........................................................ 52 Разработка с действующим устройством на платформе Android ... 56 Дополнительно о службе ADB ........................................................ 60 В заключение ................................................................................ 62
Стр.6
6 Содержание Глава 2. Создание низкоуровневого проекта для Android .... 64 Компиляция и развертывание примеров приложений из Android NDK .............................................................................. 65 Создание файлов проекта с помощью менеджера Android ............ 68 Компиляция низкоуровневого кода с помощью NDK-Build ............. 71 Сборка и упаковка приложений с помощью Ant ............................. 71 Развертывание пакета приложения с помощью Ant ....................... 72 Запуск приложения с помощью командной оболочки ADB ............. 73 Дополнительно об инструментах для Android ................................ 75 Создание первого низкоуровневого проекта для Android ...................... 75 Введение в Dalvik и ART ................................................................. 80 Взаимодействие Java и C/C++ ....................................................... 81 Отладка низкоуровневых приложений для Android......................... 85 Определение настроек NDK для приложения ................................ 88 Повседневное использование NDK-GDB ....................................... 90 Анализ аварийных дампов ............................................................. 91 Настройка проекта Gradle для компиляции низкоуровневого кода .............................................................................................. 96 В заключение .............................................................................. 103 Глава 3. Взаимодействие Java и C/C++ посредством JNI ... 104 Инициализация библиотеки JNI................................................... 105 Преобразование Java-строк в низкоуровневые строки ................ 114 Кодирование строк в низкоуровневом коде ........................................ 121 Поддержка строк в JNI API ................................................................... 122 Передача элементарных типов Java в низкоуровневый код ......... 124 Ссылки на Java-объекты из низкоуровневого кода ...................... 128 Локальные ссылки .............................................................................. 133 Глобальные ссылки ............................................................................. 135 Слабые ссылки ................................................................................... 135 Обработка Java-массивов ........................................................... 137 Элементарные массивы ...................................................................... 148 Массивы объектов .............................................................................. 151 Возбуждение и проверка Java-исключений ................................. 152 Выполнение кода при наличии исключения ......................................... 156
Стр.7
Содержание 7 API обработки исключений .................................................................. 157 В заключение .............................................................................. 158 Глава 4. Вызов функций на языке Java из низкоуровневого кода ............................................................. 160 Обратный вызов Java-методов из низкоуровневого кода ............ 161 Дополнительно о JNI Reflection API .............................................. 168 Отладка JNI ......................................................................................... 170 Синхронизация Java с низкоуровневыми потоками выполнения ....171 Синхронизация программного кода на Java и C/C++ с помощью мониторов JNI ..................................................................................... 183 Присоединение и отсоединение потоков выполнения......................... 184 Низкоуровневая обработка растровых изображений ................... 185 Регистрация низкоуровневых методов вручную .......................... 200 JNI в C и C++ ............................................................................... 201 В заключение .............................................................................. 202 Глава 5. Создание исключительно низкоуровневых приложений ................................................... 203 Создание низкоуровневого визуального компонента .................. 204 Подробнее о низкоуровневом связующем модуле .............................. 211 Обработка событий визуального компонента .............................. 214 Доступ к окну из низкоуровневого кода ....................................... 225 Измерение времени в низкоуровневом коде ............................... 236 В заключение .............................................................................. 247 Глава 6. Отображение графики средствами OpenGL ES ..... 248 Инициализация OpenGL ES ......................................................... 249 Конвейер OpenGL ........................................................................ 256 Чтение текстур с помощью диспетчера ресурсов ........................ 258 Дополнительно об Asset Manager API .................................................. 262 Подробнее о текстурах ....................................................................... 278 Рисование двухмерных спрайтов ................................................ 280 Массивы вершин и буферные объекты с вершинами .......................... 301
Стр.8
8 Содержание Эффект частиц ............................................................................ 303 Программирование шейдеров на языке GLSL ..................................... 314 Адаптация графики для разных разрешений ............................... 316 В заключение .............................................................................. 324 Глава 7. Проигрывание звука средствами OpenSL ES ....... 325 Инициализация OpenSL ES .......................................................... 327 Еще о философии OpenSL ES .............................................................. 333 Воспроизведение музыкальных файлов ...................................... 334 Воспроизведение звуков............................................................. 342 Обработка событий в очереди звуков ................................................. 355 Важность низкой задержки в Android .................................................. 356 Запись звука ............................................................................... 358 В заключение .............................................................................. 362 Глава 8. Устройства ввода и датчики ............................. 363 Обработка событий касания ........................................................ 364 Обработка событий от клавиатуры, клавиш направления (D-Pad) и трекбола ...................................................................... 378 Проверка датчиков ...................................................................... 385 Дополнительно о датчиках .................................................................. 400 В заключение .............................................................................. 401 Глава 9. Перенос существующих библиотек на платформу Android ......................................................... 402 Разработка с применением стандартной библиотеки шаблонов . 403 Перенос Box2D на платформу Android ......................................... 420 Мир Box2D .......................................................................................... 441 Подробнее об определении столкновений .......................................... 442 Режимы столкновений и фильтрация .................................................. 444 Дополнительные ресурсы, посвященные Box2D ................................. 446 Компиляция Boost на платформе Android .................................... 447 Мастерство владения файлами Makefile ...................................... 459 Переменные в файлах Makefile ........................................................... 459 Инструкции в файлах сборки ............................................................... 463
Стр.9
Содержание 9 Архитектуры процессоров (ABI) ................................................... 467 Дополнительные наборы инструкций (NEON, VFP, SSE, MSA) .............. 468 В заключение .............................................................................. 471 Глава 10. Интенсивные вычисления на RenderScript .......... 472 Что такое RenderScript? ............................................................... 473 Выполнение встроенной функции ....................................................... 474 Создание собственного ядра ...................................................... 486 Объединение сценариев ............................................................. 495 В заключение .............................................................................. 504 Послесловие ................................................. 505 Что мы узнали ............................................................................. 505 Куда двигаться дальше ................................................................ 506 Где искать помощь....................................................................... 507 Это лишь начало.......................................................................... 508 Предметный указатель .................................... 509
Стр.10

Облако ключевых слов *


* - вычисляется автоматически
Антиплагиат система на базе ИИ