android 源码编译中的overlay属性

当你很有把握确定修改的是那个文件实现某个客制化需求的时候,但是实际修改又没起作用的时候,你就应该考虑到有没有被overlay了

1.什么是overlay?

简单一点来说就是覆盖的意思,比如mtk的平台的overlay文件里面路径下面config.xml里面有config_supportMicNearUltrasound属性,而实际正常的源码frameworks\base\core\res\res\values\config.xml下面也有个config.xml的config_supportMicNearUltrasound属性,那么实际最后生效的就是mtk的平台的overlay文件里面路径下面config.xml内定义的那个文件属性了

device\mediatek\common\overlay\audio\frameworks\base\core\res\res\values\config.xml

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <bool name="config_supportMicNearUltrasound">false</bool>

</resources>

2.mtk和rk的平台很多的时候会做些自己的客制化需求,然后实现方式就是在device下面加overlay属性了,而且overlay频率很高的部分是Settings/Launcer3/framework-base的比较多,其他的也有一部分

3.还有一个overlay应用场景就是apk覆盖,比如gms里面的Gmail和系统原生的Email,Gmail的的mk文件是默认会覆盖Email的,即实际编译的时候会只生成Gmail,但是不生成Email,如果客户需求是两者都要,则去掉mk文件了里面的LOCAL_OVERRIDES_PACKAGES内容包含的Email即可,删除操作也类似

猜你喜欢

转载自blog.csdn.net/u010672559/article/details/79977463