AndroidManifest的解码和重新编码

https://github.com/bihe0832/Android-GetAPKInfo

https://github.com/fourbrother/AXMLEditor

打渠道包的时候,因为渠道包和标准的包,只有AndroidManifest.xml文件中一些

与渠道相关的参数需要变更,如果能够实现对应编译后生成的AndroidManifest.xml

替换对应的参数值,重新生成压缩包,这样就可以节省漫长的编译过程,大大加快

渠道包生成的过程。

问题:怎么样实现对编译后的AndroidManifest.xml文件进行修改呢?

参考https://github.com/fourbrother/AXMLEditor

开发了修改渠道号的功能,对应的项目地址:

https://github.com/joedan0104/JAXMLEditor.git

 

原理:

1)解析原AndroidManifest.xml,查找需要对应修改的标签位置。

例如修改渠道号,对应的标签meta-data,标记为UMENG_CHANNEL的属性块中,

目标属性value的值进行替换。

		
		

2)找到以后,删除android:value="main"属性;

		
		

3)重新添加目标属性值android:value="baidu"

		
		

这样目标AndroidManifest.xml就生成了。

具体代码实现请参考程序。

你可能感兴趣的:(安卓开发)