AS导入aar包报错Error:Execution failed for task ':app:processDebugManifest'.

当项目用到第三方aar包时,需要加入到本地libs文件夹下,并且在gradle中添加相应依赖,用到相同依
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs

赖包时,选择其一,例如:appcompat-v7包在本地项目中有依赖,compile
 'com.android.support:appcompat-v7:25.3.1' ,aar文档中也要添加依赖   compile 'com.android.support:appcompat-v7:23.0.1',这两种版本反应了本项目SDK编译版本用的是25,而导入的aar包原项目为23,一般去掉等级低的依赖包,这里保留 compile 'com.android.support:appcompat-v7:25.3.1' 。当把重复的包去掉之后,如果项目还报错,如下       
> Manifest merger failed : Attribute application@allowBackup value=(true) from AndroidManifest.xml:29:9-35
	is also present at [:WbCloudFaceVerifySdk-proRelease-v1.3.89-c596764:] AndroidManifest.xml:25:9-36 value=(false).
	Suggestion: add 'tools:replace="android:allowBackup"' to  element at AndroidManifest.xml:27:5-196:19 to override.


那说明本项目与导入项目之间存在重复调用的问题,例如Maniest 合并时候报的错误:Manifest merger failed 。按提示将AndroidManifest 中application标签下的内容改成tools:replace,这里是由于aar包中有allowBackup属性,本地项目也含有allowBackup属性并且双方涉值不一致,因此需要去重,并且让子项目跟随主项目值去取,修改如下:

   


切记这里改成tools:replace不算完,还要定义android:allowBackup="false" 的值,要不很可能再报异常:

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs

这里的原因还是AndroidManifest文件合并失败。





你可能感兴趣的:(Android,Studio,Exception,源码,android)