IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

编译 RenderDoc 的安卓 apk(带interceptor-lib)

Kxn's eXercise Notes 2021-05-26 22:50:44 累计浏览 2,345 次
本机暂存

之前做过一次结果没有做笔记,今天又想用了,发现当时的结果全都删了,浪费了一些时间。在这里做个笔记。

RenderDoc 的安卓 APK 编译严格讲没啥难的,就是啰嗦。而且如果需要好的 hook 能力的话,需要编译 interceptor-lib,这个东西需要一个非常老版本的 llvm,编译这个 llvm 也非常啰嗦。

虽然理论上讲可以在 windows 上用 MSYS 之类的编译,但是为了避免啰嗦,我们还是老老实实用 Linux 吧,反正现在的 Windows 10 都能用 WSL 了。

首先按照 https://github.com/baldurk/renderdoc/blob/v1.x/docs/CONTRIBUTING/Compiling.md 里面描述的,设置好 JDK/安卓SDK/安卓NDK

然后参考 https://github.com/baldurk/renderdoc/blob/v1.x/renderdoc/3rdparty/interceptor-lib/README.md 这篇里面的内容,先 git clone 出来,删掉 LLVMHello 相关的行。

下面重点来了,原来文章中里面有个小小的错误,在 cmake 后面的参数里面,比较新版本的 cmake 是自己选择安卓 NDK 里面的 Toolchain 的, cmake 后面参数里面加的 -DANDROID_TOOLCHAIN=clang 实际没有效果,导致总会选中实际不能用的 gcc toolchain,换成 -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang 即可,具体可以参见 /usr/share/cmake-x.xx/Modules/Platform/Android/Determine-Compiler-NDK.cmake。

其他内容文章中都是正确的,照着做即可,就能编译出来强 hook 能力的 renderdoc 安卓 apk 了。

同分类推荐文章

  1. 「置顶」我做了什么 (2026-05-05 12:13:28)
  2. 万字长文推演:手机不再从 App 开始,Agent OS 如何接管任务入口 (2026-04-28 14:57:22)
  3. Android Perfetto 系列 10 - Binder 调度与锁竞争 (2025-11-16 15:33:30)

查看更多 移动开发 文章 →

建议继续学习

  1. 情绪版(Mood board)操作流程的新思考 (累计阅读 41,753)
  2. android 开发入门 (累计阅读 19,527)
  3. Android 连接SSID隐藏网络以及 LEAP 认证的方法 (累计阅读 9,539)
  4. 让安卓手机通过代理翻墙的方法 (累计阅读 9,116)
  5. 手机产品设计方向 (累计阅读 7,953)
  6. 实时监控Android设备网络封包 (累计阅读 6,557)
  7. Apache2中俩种设置PHP的异同 (累计阅读 6,484)
  8. Eclipse开发Android应用程序入门:重装上阵 (累计阅读 6,459)
  9. 基于 PhoneGap 与 Java 开发的 Android 应用的性能对比 (累计阅读 6,409)
  10. SVN Hook造成SVN提交速度慢的问题 (累计阅读 6,282)