1:see logs
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed with multiple errors, see logs
开始是蒙蔽的,see logs,这个logs按照网上的找出了,但是翻半天没看到关键的具体错误在哪里
直到看到上面的关键字:Manifest merger
Manifest的错误,后来才发现Manifest的错误是需要通过打开AndroidManifest.xml
文件自己寻找问题的……我是觉得这方面比较不方便。
2:多个FileProvider冲突的问题
原链接:https://www.jianshu.com/p/199872d3204f
当应用中存在多个FileProvider的时候(比如在引入了一个第三方开源,例takePhoto,开源框架为了适配android7.0文件的访问也使用了FileProvider),在编译时便会报错:
在报了错误信息之后androidStudio也给出了一个解决方法,增加 tools:replace="android:authorities"属性,这么一来编译时通过了,但是在使用takePhoto的时候却出现了致命错误UndeclaredThrowableException;
此时我们就会想到使用自定义的FileProvider来避免冲突,既自己写一个FileProvider继承自android.support.v4.content.FileProvider,然后在清单文件里完成配置;特别要注意一点(被这个细节小坑了一下),在配置自定义的FileProvider的时候,resource指向的xml一定要保证唯一,比如takePhoto使用了最原始的命名file_paths.xml,那么自定义的FileProvider需要用另一个xml配置(比如file_paths1.xml),避免takePhoto使用的异常(压缩图片失败等问题)
网友评论