gradle 如何从aapt2生成与aapt生成的相同的ID?

fdbelqdn  于 2023-04-12  发布在  其他
关注(0)|答案(1)|浏览(163)

由于一些原因,我还不明白,aapt和aapt2不输出相同的ID。他们有没有办法强迫aapt2输出由aapt生成的相同ID?

cunj1qz1

cunj1qz11#

不能,你甚至不能强制aaptaapt2在连续运行中保证分配相同的资源ID。R.java文件中的ID在应用运行时是静态的,但在编译时会动态分配。
为了简短地讨论原因,您可以查看这个关于资源ID的用途和结构的Stackoverflow线程。
此外,不鼓励您接触R.java文件和资源ID。您也不需要出于任何目的 * 知道 * 这些ID。只需使用常见的文档方法访问应用程序资源,您就可以完全正常。
注意:有一些方法可以预定义ID,例如在这个Stackoverflow thread中描述的,使用R.id类。但是像这样的技巧不应该有很多真实的的用例。通常你会把事情变得不必要的复杂。

相关问题