Android Native Development

本文深入探讨Android原生开发,讲解C/C++程序的编译、运行和调试过程,包括ndk-build、CMake的使用,以及Linux和Android平台的编译原理对比。此外,还涉及AndroidABI、进程启动、调试技巧如GDB/LLDB及内存分析等内容,为Android Native开发提供全面指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍

Android Native开发就是指是使用C和C++等语言以原生代码形式,来实现应用的各个部分。而Android是基于Linux内核的操作系统,因此在Android上使用C/C++开发和Linux非常类似。本系列文章主要介绍C/C++程序编译、运行、调试等相关知识,会从Linux和Android两个平台同时对比分析。

使用Gitbook提供更加友好的阅读体验:

GitHub Pages 地址:https://chenls.github.io/Android-Native-Development/

Gitee Pages 地址:https://cqupt.gitee.io/android-native-development/

目录

  • 编译原理
  • 编译过程
    • ndk-build
    • CMake
    • 独立工具链
  • 架构和CPU
    • Android ABI
    • 32/64 兼容
  • 运行过程
    • 启动过程
    • 链接器
    • init.rc
    • 用户组 selinux权限
    • /proc/pid/map
    • plt
    • hook
    • 进程/线程
  • 调试技巧
    • GDB/LLDB调试
    • Crash分析
    • 内存分析
  • 常用命令
    • grep
    • find
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值