android– 与Cordova一起使用manifest.xml中的重复FileProvider时出错

android– 与Cordova一起使用manifest.xml中的重复FileProvider时出错,第1张

概述怎么可能在清单中有多个相同类型的提供者?由于cordova相机插件带来了文件提供商,我们的应用程序无法再构建.在清单中我们有以下内容:<providerandroid:authorities="${applicationId}.provider"android:exported="false"android:grantUriPermissions="true"android:name="andro

怎么可能在清单中有多个相同类型的提供者?由于cordova相机插件带来了文件提供商,我们的应用程序无法再构建.在清单中我们有以下内容:

<provIDer androID:authoritIEs="${applicationID}.provIDer" androID:exported="false" androID:grantUriPermissions="true" androID:name="androID.support.v4.content.fileProvIDer">  <Meta-data androID:name="androID.support.file_PROVIDER_PATHS" androID:resource="@xml/provIDer_paths"/></provIDer><provIDer androID:authoritIEs="com.our.app.dev.fileprovIDer" androID:exported="false" androID:grantUriPermissions="true" androID:name="androID.support.v4.content.fileProvIDer">  <Meta-data androID:name="androID.support.file_PROVIDER_PATHS" androID:resource="@xml/file_provIDer_paths"/></provIDer>

第一个条目来自相机插件,第二个来自我们的一个插件.

在生成过程中,会出现以下错误:

AndroIDManifest.xml:44:5-46:16 Error:Element provIDer#androID.support.v4.content.fileProvIDer at AndroIDManifest.xml:44:5-46:16 duplicated with element declared at AndroIDManifest.xml:41:5-43:16

谢谢!

解决方法:

我认为这不是一个cordova问题,而是在androID构建过程中.至少我可以在简单的AndroID Studio和Gradle设置中重现它:

看来androID有两个具有相同名称属性的标签是不行的.我不明白为什么这是一个问题,只要你有不同的权限,它应该工作正常.但这也导致了一个解决方案:

在您的插件中(或您想要使用的插件的自己的分支).您创建自己的fileProvIDer.java,它只是扩展了原始的androID.support.v4.content.fileProvIDer

package com.our.app.dev;public class fileProvIDer extends androID.support.v4.content.fileProvIDer {} 

在您的插件配置中,您链接到此fileProvIDer,它现在具有不同的包名称,从而避免此问题.希望这有用,对我来说似乎可以解决问题.

总结

以上是内存溢出为你收集整理的android – 与Cordova一起使用manifest.xml中的重复FileProvider时出错全部内容,希望文章能够帮你解决android – 与Cordova一起使用manifest.xml中的重复FileProvider时出错所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1119509.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存