Android R - 构建之间生成的ID是否相同?

时间:2015-03-26 22:37:57

标签: android android-studio adt android-resources

Android R ID由IDE(Android Studio或Eclipse ADT)生成。

构建之间是否相同?

如果是,如果在不同的机器上生成,它们是否相同?

1 个答案:

答案 0 :(得分:4)

首先,IDE不是由IDE生成的,而是由构建期间运行的命令行工具aapt生成的。是的,IDE最终触发它,但它不是Android Studio的严格组成部分,它是构建工具包的一部分。

这些数字基本上按字母顺序分配,因此同一项目的资源ID将相同 - 但如果您修改资源文件树则不会。我只是准备保证在相同的文件系统,操作系统和版本的构建工具上。如果您更改其中任何一项,则所有投注均已关闭。

最终,依赖于这将是一个非常糟糕的主意,因为有人会通过修改项目一天来破解它,可能是早一点,而不是晚一点。

几年前,当我为了修补资源而编写一个APK反编译器时,我对此进行了相当广泛的研究。