1.AAR打包覆盖
主module(APK)会将AAR中同名资源覆盖:
策略如下:
资源文件例如图片,layout是采用覆盖方式。
values文件例如strings.xml是采用合并方式。
有依赖的模块只能采用aar进行打包,例如ui库等二方库。
建议将所有模块共同的resource资源放到通用module中,并且建立相应的命名机制,防重复。
以后如有业务独立的模块可以打成bundle,bundle可以看成一个独立的apk,拥有独立的资源文件
2. maven支持编译时指定res目录,(和Android overlay类似)。具体如下:
<artifactId>android-maven-plugin</artifactId> <configuration> + <resourceOverlayDirectories> + <dir>res-overlay</dir> + </resourceOverlayDirectories>
在android maven-plugin的configuration节点添加resourceOverlaytDirectioies节点,设置overlay目录。
打包时res-overlay会替换res下的同名资源文件。
可以用来换皮肤,替换不同版本资源文件等。
参考:
https://code.google.com/p/maven-android-plugin/wiki/ApkSourcesDependency
https://code.google.com/p/maven-android-plugin/wiki/Changelog
Android Overlay:
http://my.oschina.net/kingguary/blog/160190
时间: 2024-11-05 00:42:01