Android device/xxx/system/common/overlay编译产物

2024-06-19 14:04

本文主要是介绍Android device/xxx/system/common/overlay编译产物,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MTK

如下代码编译的产物在 framework-res.apk

编译配置文件在device/mediatek/system/common/目录下的Android.bp

device/mediatek/system/common/overlay/telephony/frameworks/base/core/res/res/values-mcc655-mnc01/config.xml

在Android U上面还在overlay目录中进行了产品分类

overlay目录README介绍:

Product-Line level, Operator spec level & project level's common part overlay resource will be placed here.
Folder naming should follow the rule as below.[Naming Rule]
<resolution size abbr.>[Examples]
qHD => resource_overlay/qHD
WSQVGA => resource_overlay/WSQVGA

device/mediatek/system/common/overlay
device/mediatek/system/common/overlay

OEM

device/xxx/system/common/overlay
device/xxx/system/common/overlay 子目录结构

overlay 目录的 README 介绍:

NOTE:This static resources overlay is used for packages that packaged to system image or super image by SSI.* common: 通用的静态定制
* std: 仅适用于标准的非Android Go系统的定制
* go: 仅适用于Android Go系统的定制

编译产物:

  • framework-res.apk
  • framework-res-ext.apk

apk可以直接用 jadx反编译,查看resources.arsc资源细节或者解压生成文件夹内有resources.arsc。

framework-res.apk
framework-res.apk

但是偶尔会出现解析报错的

framework-res.apk - resources.arsc
framework-res.apk - resources.arsc

Error decode arsc
java.io.IOException: type chunk, res0, expected: 0x0, actual: 0x1, offset: 0x71198e
    at jadx.core.xmlgen.ParserStream.throwException(ParserStream.java:118)
    at jadx.core.xmlgen.ParserStream.checkInt8(ParserStream.java:103)
    at jadx.core.xmlgen.ResTableParser.parseTypeChunk(ResTableParser.java:196)
    at jadx.core.xmlgen.ResTableParser.parsePackage(ResTableParser.java:169)
    at jadx.core.xmlgen.ResTableParser.decodeTableChunk(ResTableParser.java:118)
    at jadx.core.xmlgen.ResTableParser.decode(ResTableParser.java:66)
    at jadx.core.xmlgen.ResTableParser.decodeFiles(ResTableParser.java:71)
    at jadx.api.ResourcesLoader.loadContent(ResourcesLoader.java:101)
    at jadx.api.ResourcesLoader.lambda$loadContent$0(ResourcesLoader.java:82)
    at jadx.api.ResourcesLoader.decodeStream(ResourcesLoader.java:71)
    at jadx.api.ResourcesLoader.loadContent(ResourcesLoader.java:82)
    at jadx.api.ResourceFile.loadContent(ResourceFile.java:60)

正常解析的情况:

在Android Studio内无法打开 resources.arsc

这篇关于Android device/xxx/system/common/overlay编译产物的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1075231

相关文章

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

MySQL CTE (Common Table Expressions)示例全解析

《MySQLCTE(CommonTableExpressions)示例全解析》MySQL8.0引入CTE,支持递归查询,可创建临时命名结果集,提升复杂查询的可读性与维护性,适用于层次结构数据处... 目录基本语法CTE 主要特点非递归 CTE简单 CTE 示例多 CTE 示例递归 CTE基本递归 CTE 结

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级