首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >程序跑起来的时候,再去覆盖资源文件?

程序跑起来的时候,再去覆盖资源文件?

原创
作者头像
用户10171634
发布2025-10-24 15:28:49
发布2025-10-24 15:28:49
1800
代码可运行
举报
运行总次数:0
代码可运行

v_sys u_sys 目录下都有 NavigationBarInflaterView.java 我到底在哪个目录下改NavigationBarInflaterView.java 呢?

明白你的困惑 😅,你列出的情况是 v_sys 和 u_sys 下都有 NavigationBarInflaterView.java,还都和 SystemUI 相关。这确实让人容易糊涂。我们来分析清楚。


1️⃣ 先看目录区别

你列出的路径:

v_sys 下

代码语言:javascript
代码运行次数:0
运行
复制
vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java

u_sys 下

代码语言:javascript
代码运行次数:0
运行
复制
vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java

还有一些 frameworks/base/core/java 之类的系统原生路径,但通常 MTK 定制的导航栏逻辑就在 vendor 下


2️⃣ v_sys vs u_sys 的作用

目录

作用

v_sys/vendor/mediatek/proprietary/packages/apps/SystemUI

实际编译进 SystemUI APK 的源码。这才是你设备上跑的 APK 里生效的逻辑。

u_sys/vendor/mediatek/proprietary/packages/apps/SystemUI

用于 生成 overlay APK 或 RRO 资源(SystemUIResOverlay.apk)。通常只处理资源覆盖(drawable、layout、values),不负责 Java 逻辑。

🔑 重点:Java 逻辑生效的只有 v_sys 下的 SystemUI,u_sys 下只是资源 overlay。


3️⃣ 结论:修改哪个?

你要做的操作:

  • 改导航栏图标
  • 隐藏“最近”按钮

这都是 SystemUI Java 逻辑,所以你 必须改 v_sys 下的 NavigationBarInflaterView.java

u_sys 下的文件不会影响 Java 逻辑,它只是用于 overlay APK 的资源,改了也不会生效。


4️⃣ 建议做法

  1. v_sys 下修改 NavigationBarInflaterView.java
  2. 修改完后重新编译:
代码语言:javascript
代码运行次数:0
运行
复制
m mmma vendor/mediatek/proprietary/packages/apps/SystemUI

或者全量编译 SystemUI:

代码语言:javascript
代码运行次数:0
运行
复制
m MtkSystemUI
  1. 刷入设备,测试生效。

💡 总结

  • v_sys → 修改 Java 逻辑,影响实际 APK。
  • u_sys → 修改 overlay 资源,仅用于覆盖资源,不影响逻辑。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1️⃣ 先看目录区别
  • 2️⃣ v_sys vs u_sys 的作用
  • 3️⃣ 结论:修改哪个?
  • 4️⃣ 建议做法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档