编译app资源文件找到不到的问题分析

       开发app的时候,可能在同一个工程下,同一个app存在的不一样版本,在这些不一样版本之间切换时编译可能出现找不到资源符号---------找不到符号,的错误。android

  形成这种错误的缘由主要有四个:app

  1.代码的ID有错;spa

  2.资源文件ID 有错;xml

  3.xml未编译资源

    前面两个容易检查出来,只需对比便可,可是后面一个确实很难检查的出,只有你肯定前两个缘由排除以后,你就能够锁定。缘由就是资源文件xml没有编译到,想要xml资源编译很是简单,你随便添加一个空行。开发

  那么形成这种问题的缘由是什么呢?get

  那就说说个人状况吧:我在 不一样版本切换时,一般会编译一个版本的app代码,后又编译另外一个版本的app,系统编译的时候会自动生成一个R文件,该文件的目录就在out/target/common/R/com/android/xxx/里面,等到第二次编译这个app代码的时候,因为个人xml文件未改动,编译器不会自动添加资源id到R文件里面,因此就会出现上面找不到资源id的状况。编译器

    同时说明编译器在编译的时候会检查每一个文件,是否在编译后被修改过,若是检查编译后没有修改,则不会去编译这个文件。
编译

相关文章
相关标签/搜索