android – 如何使用aapt2,文档在哪里?
作者:互联网
我使用aapt p打包资源并生成R.java.
但是当我升级到Android 24时,我找到了aapt2.exe.
我应该使用aapt2.exe吗?我该如何使用它?我找不到任何关于它的文档.
解决方法:
AAPT和AAPT2之间的工作方式有很大差异.
编译和链接
除了新功能之外,AAPT2背后的主要思想是将“包”步骤分为两部分:’compile’和’link’.它提高了性能,因为如果只有一个文件发生更改,您只需要重新编译该文件并使用’link’命令链接所有中间文件.
更具限制性
AAPT2试图尽早捕获大多数错误.这就是为什么当从AAPT切换到AAPT2时,您可能会遇到许多错误,指出某些元素嵌套不正确或某些引用不正确.有关新限制性的更多信息,请参阅Android Studio 3.0 documentation.
用法
Android Studio 3.0默认启用AAPT2(使用Android Gradle Plugin 3.0.0).但是,如果要在自己的脚本中使用AAPT2,则需要更改处理资源的方式.
对于使用AAPT的’package’命令,您将使用-S传递资源目录.使用AAPT2,您需要首先使用’compile命令编译每个资源,然后仅使用-R标志传递所有已编译的文件.
例如:
aapt package -S app/src/main/res/ ...
而是使用:
aapt2 compile -o compiled/res/ app/src/main/res/values/values.xml
aapt2 compile -o compiled/res/ app/src/main/res/drawable/myImage.png --no-crunch
...
aapt2 link -R compiled/res/values_values.arsc.flat -R compiled/res/drawable_myImage.flat ...
旗
标志使用方面存在更多差异,例如,在“编译”步骤期间,每个文件都使用“–pseudo-localize”和“–no-crunch”标志.有关AAPT2标志类型的完整信息:
aapt2 compile -h
aapt2 link -h
标签:android,aapt,aapt2 来源: https://codeday.me/bug/20190930/1836686.html