首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >mmm vendor/mediatek/proprietary/packages/apps/Launcher3 编译后生成的apk在哪里?

mmm vendor/mediatek/proprietary/packages/apps/Launcher3 编译后生成的apk在哪里?

原创
作者头像
用户10171634
发布2025-10-17 20:53:38
发布2025-10-17 20:53:38
1320
举报

mmm vendor/mediatek/proprietary/packages/apps/Launcher3 编译后生成的apk文件路径及apk名字,是在envsetup.sh文件里定义的 还是在split_build.sh 定义的?如何找到对应的路径?

明白了,你想知道 mmm vendor/.../Launcher3 编译后的 APK 文件路径和名字是怎么决定的,以及在哪里可以找到对应路径。我帮你梳理清楚整个流程。


1️⃣ APK 路径和名字来源

在 AOSP/MTK 编译系统里,APK 的输出路径和名字 不是直接写在 envsetup.sh 或 split_build.sh,而是由 Android.mk / Android.bp + 构建系统规则 决定的。

🔹 关键文件和变量

  1. Android.mk / Android.bp
    • 定义了模块名、源代码目录、编译类型。
    • 对 APK 来说,最重要的是: LOCAL_MODULE := Launcher3 LOCAL_MODULE_TAGS := optional LOCAL_MODULE_PATH := $(TARGET_OUT)/priv-app
    • 这些变量决定了:
      • APK 名称 = LOCAL_MODULE + .apkLauncher3.apk
      • APK 输出目录 = TARGET_OUT/priv-app → 通常是: out/target/product/<product>/system/priv-app/
  2. TARGET_OUT
    • envsetup.sh 里执行 lunch 命令设置的目标产品路径决定: TARGET_OUT = out/target/product/<你的_product>

2️⃣ 找到具体路径的方法

假设你编译的是 MTK vendor Launcher3:

代码语言:javascript
复制
mmm vendor/mediatek/proprietary/packages/apps/Launcher3

你可以这样找 APK:

代码语言:javascript
复制
# 首先确认 TARGET_PRODUCT
echo $TARGET_PRODUCT
# 假设输出 _wifi

# APK 路径
ls out/target/product/_wifi/system/priv-app/Launcher3/Launcher3.apk

或者直接查找:

代码语言:javascript
复制
find out/target/product/$TARGET_PRODUCT/ -name "Launcher3.apk"

✅ 这样你可以快速定位生成的 APK。


3️⃣ envsetup.sh / split_build.sh 的作用

  • envsetup.sh
    • 定义了编译环境变量和函数,比如 lunchmmmm
    • 没有直接定义 APK 路径或名字,只是给 Soong / Make 构建系统提供环境。
  • split_build.sh
    • 一般用于分模块编译和自动化打包脚本。
    • 可能会用一些 envsetup 的变量去控制哪些模块编译,但 APK 路径仍然是 Android.mk / Android.bp 决定的

总结:APK 输出路径和名字主要由 Android.mk / Android.bp 里的 LOCAL_MODULE_PATH / LOCAL_MODULE 决定,envsetup.sh 只是提供 TARGET_OUT 等环境变量


4️⃣ 快速定位 APK 命令总结

代码语言:javascript
复制
# 编译 Launcher3
mmm vendor/mediatek/proprietary/packages/apps/Launcher3

# 找 APK
echo $TARGET_PRODUCT
find out/target/product/$TARGET_PRODUCT/ -name "Launcher3.apk"

通常你会得到:

代码语言:javascript
复制
out/target/product/_wifi/system/priv-app/Launcher3/Launcher3.apk

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1️⃣ APK 路径和名字来源
    • 🔹 关键文件和变量
  • 2️⃣ 找到具体路径的方法
  • 3️⃣ envsetup.sh / split_build.sh 的作用
    • 4️⃣ 快速定位 APK 命令总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档