今天用apktoool反编译apk,然后回编回去的时候报错失败了。具体情况是这样的。
apktool版本:2.3.4
使用下面的命令反编译apk:
apktool d dou2.apk -o test
然后修改完成后使用下面的命令回编译
cd test
apktool b .
然后在回编译的时候报错信息如下:
W: ~/Downloads/dou2/./res/color/a77.xml:4: error: No resource identifier found for attribute 'alpha' in package 'com.xxx'
W:
W:~/Downloads/dou2/./res/color/a77.xml:5: error: No resource identifier found for attribute 'alpha' in package 'com.xxxx'
看报错貌似是回编译的时候找不到资源id,就在网上找了一番解决方案,最终按照下面的方法解决:
在反编译apk的时候加上-r
参数,如下:
apktool -r d dou2.apk -o test
因为我不涉及资源文件的修改,所以加上-r
参数不会反编译资源文件,所以在再次打包时就不会报资源找不到的错误了。