Android JNI系列详解之CMake和ndk-build编译工具介绍

一、前提

CMake和ndk-build只是编译工具,本次主要介绍ndk-build和CMake的区别,下节课介绍他们的使用。

二、CMake工具介绍

CMake:cross platform make,是跨平台的编译工具

CMake是在AndroidStudio2.2之后引入(目前默认的NDK编译工具),使用时配合CMakeList.txt和gradle。

对C++的配置:

默认配置了libc++;

默认启用了C++异常;

默认启用了RTTI(运行时类型识别)

三、ndk-build工具介绍

NDK自带脚本工具,主要只能在NDK中使用,配合Android.mk使用,选配(Application.mk或者gradle使用),使用ndk-build通常需要配置环境变量,以方便使用。

对C++的配置:

默认未配置libc++;

默认停用了C++异常;

默认停用了RTTI(运行时类型识别)

相关推荐
好的佩奇1 小时前
蓝牙之广播与扫描
android·flutter·蓝牙
传奇开心果编程3 小时前
【Jetpack Compose娓娓道来】第36课:焦点管理与键盘输入——让遥控器、键盘和输入法都“找得到北”
android·kotlin·移动开发·交互·android jetpack·ui框架·声明式ui
hai_android4 小时前
AudioTrack 深度解析:从原理到实战
android·java·kotlin
红尘伴蝶舞4 小时前
从秒开优化到连环崩溃:深入剖析 ViewPager2 在常驻 DialogFragment 中的复用陷阱与自愈方案
android·kotlin
巫山老妖9 小时前
Android 应用架构演进:MVC / MVP / MVVM / MVI (2026)
android·android jetpack
木头左13 小时前
【架构设计】教育类 App 服务端化改造:AI 上移、题库分层与个人题库归属
android·架构设计·系统设计·后端开发·数据库设计
墨狂之逸才13 小时前
USB 的 HOST 和 DEVICE 到底有什么区别?ADB 调试应该选哪个?
android
奶油话梅糖14 小时前
苹果的内核跑上了安卓手机:2,631 Star 的 HakiOS 让 XNU 在 Adreno GPU 上画出 118 帧
android·macos·智能手机
恋猫de小郭14 小时前
Flutter THLC 的 WebView 滚动终于从 70 FPS 提升到 120 FPS
android·前端·flutter
好的佩奇1 天前
Dart 之扩展类型
android·flutter·dart