android - android build system根据包名获取源码路径
问题描述
我想根据包名获取包源代码,例如xxx.apk
我知道它可以通过 grep 过滤LOCAL_PACKAGE_NAME
。但 AOSP 源太大。
是否有任何构建系统命令可以列出所有包名称和路径?
问候
解决方案
TLDR
. build/envsetup.sh
# Show list of modules for the selected configuration.
lunch
m modules
# Grep for your module.
mgrep <module>
解释
调用后,. build/envsetup.sh
您只能使用mgrep
grep 构建配置文件。
请注意,Android 目前并行使用两种构建配置类型。旧的 makefile 类型 files( Android.mk
) 将包含LOCAL_PACKAGE_NAME
. 但是,新的 Soong 模块文件 ( Android.bp
) 具有不同的语法。您最好 grep 模块名称而不是LOCAL_PACKAGE_NAME
.
您可以使用m modules
获取构建系统已知的所有模块的列表。此命令要求您先运行lunch
。此外,返回的列表m modules
将仅包含lunch
配置选择的模块。
推荐阅读
- c - 尝试在 C 语言中将 TTGO T5 ESP32 上的比例字体中的文本居中
- c++ - 为什么向量的大小是静态的,我们仍然可以添加更多值?
- c - Delphi 和 MSVC 不会以相同的方式将 +NAN 与零进行比较
- java - 再次安装 Android Studio 后出现图标问题
- ssh - 使用 ufw 后无法访问服务器并忘记允许端口 22 进行 SSH
- c++ - C++ 协程:从最终挂起点调用“handle.destroy”是否有效?
- excel - 在 vba excel 中将日期与 DateTime.Now 进行比较
- python - Python Selenium - 禁用镀铬标签睡眠/休眠
- pandas - Pandas 中的重复测量方差分析,不同列中的因变量值
- scala - 带有 Spylon-Kernel 的 Jupyter 中 spark.implicits._ 的问题