Android НДК
Разработчик(и) | |
---|---|
Первоначальный выпуск | июнь 2009 г [1] |
Стабильная версия | r26c [2] / 12 февраля 2024 г |
Репозиторий | |
Написано в | С и С++ |
Операционная система |
|
Платформа | IA-32 (только Windows) или x86-64 (Windows, [3] macOS и Linux) |
Доступно в | Английский |
Тип | SDK |
Веб-сайт | разработчик |
Android Native Development Kit ( NDK ) предоставляет инструмент кросс-компиляции код, написанный на C / C++ , позволяющий скомпилировать , в ARM или x86 собственный код (или их 64-битные варианты ) для Android . [4] [5] NDK использует компилятор Clang для компиляции C/C++. GCC был включен до NDK версии 17, но удален в версии 18 в 2018 году.
Обзор
[ редактировать ]Собственные библиотеки можно вызывать из Java кода , работающего под управлением среды выполнения Android, используя System.loadLibrary
, часть стандартных классов Android Java. [6] [7]
Инструменты командной строки можно скомпилировать с помощью NDK и установить с помощью adb . [8]
Android использует Bionic в качестве библиотеки C и LLVM libc++ в качестве стандартной библиотеки C++ . NDK также включает в себя множество других API: [9] zlib сжатие OpenGL ES или Vulkan , графика , аудио OpenSL ES и различные API-интерфейсы, специфичные для Android, для таких вещей, как ведение журналов, доступ к камерам или ускорение нейронных сетей .
NDK включает поддержку CMake и собственных ndk-build
(на основе GNU Make ). Android Studio поддерживает запуск любого из них из Gradle . Другие сторонние инструменты позволяют интегрировать NDK в Eclipse. [10] и Визуал Студия . [11]
Для профилирования ЦП NDK также включает в себя simpleperf. [12] который похож на инструмент perf для Linux , но с лучшей поддержкой Android и, в частности, смешанных стеков Java/C++.
Ссылки
[ редактировать ]- ^ «Android NDK | Разработчики Android» . Разработчик.android.com. 13 ноября 2012 года . Проверено 13 марта 2014 г.
- ^ «Выпуск NDK r26c · android/ndk» . Проверено 31 марта 2024 г.
- ^ «Загрузки NDK | Разработчики Android» . Developer.android.com . Проверено 24 апреля 2018 г.
- ^ Ратабуй, Сильвен (2015). Руководство для начинающих по Android NDK: откройте для себя родную сторону Android и используйте возможности C/C++ в своих приложениях (2-е изд.). Бирмингем. ISBN 978-1-78398-965-2 . OCLC 910639612 .
{{cite book}}
: CS1 maint: отсутствует местоположение издателя ( ссылка ) - ^ Косаревский, Сергей (2013). Поваренная книга по разработке игр для Android NDK: более 70 интересных рецептов, которые помогут вам разрабатывать мобильные игры для Android на C++ . Виктор Латыпов. Бирмингем. ISBN 978-1-78216-779-2 . OCLC 880639342 .
{{cite book}}
: CS1 maint: отсутствует местоположение издателя ( ссылка ) - ^ Шринивас, Даванум (9 декабря 2007 г.). «Android — вызов методов на основе JNI (сопряжение C/C++ и Java)» . Архивировано из оригинала 16 декабря 2008 года . Проверено 13 декабря 2008 г.
- ^ "java.lang.System" . Android-разработчики . Проверено 3 сентября 2009 г.
- ^ «Мост отладки Android (adb)» .
- ^ «Нативные API Android NDK | Android NDK» .
- ^ «Использование Eclipse для разработки Android C/C++» . 23 января 2011 г.
- ^ «Использование Visual Studio для разработки собственного кода Android — учебные пособия по VisualGDB» .
- ^ «Simpleperf | Android NDK» .