今天打包出现一个问题,打成的包里面 AndroidMenifest.xml 中有一个权限:READ_PHONE_STATE。
我检查了项目和依赖项目的 AndroidMenifest.xml,都没有声明这个权限,那这个权限从哪里冒出来的呢。
检查没有发现这个权限后,猜测是 sdk 依赖库里面加的权限,于是解压了 sdk.arr 包,但是没有发现这个权限。
后来检查工程下日志:“\build\outputs\logs\manifest-merger-release-report.txt”,终于找到了原因。该文件里有详细的 AndroidMenifest.xml merger 信息。然后发现了该权限来自于一个自己的库项目,加入原因是因为 minsdk<4。其实是我再这个项目的gradle 中没有定义 minsdk,然后加上 minsdk 定义重新打包。
问题解决了。
查看关于 AndroidMenifest.xml merger 信息,查看日志:“\build\outputs\logs\manifest-merger-release-report.txt”。