当前位置:阳光沙滩 >Android > 查看文章
阿里云优惠码

今天在编译系统,其实我是无意识地把所有英文命名的复制到了系统的应用中,然后进行编译,结果报错了。

make: *** [out/target/common/obj/APPS/SystemUI_intermediates/src/R.stamp] Error 1

报了上面这个错,真不知道什么原因。也没有什么相关的信息出来

这个时候我们只能用阿基米德的排水法。

先是复原回去,然后删除编译出来的中间文件,编译,通过,说明的确是因为复制了新的图片而导致编译错误了。

然后用差别的方法验证,我只复制其种一张图片,删除中间文件再编译,通过。

得出结论:跟其中的图片有关系。

想到的东西:是不是命名跟系统的有冲突,我这里是一个独立的应用SystemUI,一般不会有,那是不是图片损坏,预览了一下,全部正常。

我看了一下所有文件的名字,只有一个比较特殊的就是GPS.png

后来我在输出的Log里搜了一下GPS

res/mipmap-mdpi-v4/GPS.png: Invalid file name: must contain only [a-z0-9_.]
res/mipmap-mdpi-v4/GPS.png: Invalid file name: must contain only [a-z0-9_.]
res/mipmap-mdpi-v4/GPS.png: Invalid file name: must contain only [a-z0-9_.]

这里的意思是命名不可用,也就是命名不规则,不合法。

命名只能是a到z的小写字母,0到9,_.这几个符号。

OK,改一下就编译过去了!!!

记录一下,就这次的编译错误。如果是因为字符串的问题,比如说,字符串在布局文件里有,而没有提到strings.xml里也会报错的,但是这个会告诉你是那里错了。

7K
为您推荐
各种观点