作者:用户rsvowi2rvt | 来源:互联网 | 2023-02-01 11:15
我试图在访问他们的相机之前询问用户许可.我为此使用了离子诊断插件.在添加诊断插件之前,应用程序在Phonegap构建上构建良好.添加插件后,我通过Phonegap构建获得以下错误:
FAILURE:构建因异常而失败.
出了什么问题:任务执行失败':processDebugManifest'.
清单合并失败:来自[com.android.support:support-v4:26.0.0-alpha1]的属性meta-data#android.support.VERSION@value value =(26.0.0-alpha1)AndroidManifest.xml:27:9 -38也存在于[com.android.support:appcompat-v7:25.3.1] AndroidManifest.xml:27:9-31 value =(25.3.1).建议:在AndroidManifest.xml:25:5-27:41中添加'tools:replace ="android:value"'到元素
我使用以下方法安装了插件:
$ ionic cordova plugin add cordova.plugins.diagnostic
$ npm install --save @ionic-native/diagnostic
在我的config.xml中,我有以下内容:
有没有人知道我在这里做错了什么?
1> sebaferreras..:
我认为该错误与诊断插件无关.几天前,我更新了我的支持存储库,同样的错误开始出现在我的最后.根据这个SO答案,问题是因为:
有些库依赖于Android支持库的"X或更新"版本,因此Gradle依赖性解析会抓取最新的可用内容,忽略您实际拥有依赖项块中指定的精确版本.
这不是你想要的.您希望所有具有相同版本和主要版本的支持库都必须匹配编译SDK版本.
因此,为了解决它,请转到build.gradle
位于文件末尾的文件,projectName/platforms/android/build.gradle
并在文件末尾添加以下内容:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.3.1'
}
}
}
}
您可以使用您正在使用的任何版本替换该版本,但鉴于您发布的错误,25.3.1
似乎是要使用的正确版本.