我需要一些关于AndroidManifest的“使用权限”的帮助。
我有一个 cordova 项目,有一些插件。当我启动cordova run android
时,我得到这个错误:
Element uses-permission#android.permission.ACCESS_FINE_LOCATION at AndroidManifest.xml:35:5-79 duplicated with element declared at AndroidManifest.xml:32:5-79
[...]
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed with multiple errors, see logs
我注意到plugin.xml
中的uses-permission
(在每个插件的文件夹中),分别为每个插件触发,添加它们的权限,而不是将它们合并到AndroidManifest.xml
中。
这是我的清单。如您所见,uses-permissions
是重复的:[1]第1页
插件文件夹是自动生成的,当我添加插件,所以我需要一个解决方案“外”这个文件夹,这意味着我不想手动编辑文件夹内的plugin.xml
。
在config.xml
中,我添加了以下内容:
<platform name="android">
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/uses-permission[@android:name='android.permission.ACCESS_FINE_LOCATION']">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</edit-config>
</platform>
然后我跑了:
cordova platform rm android
rm -r package-lock.json
rm -r node-modules (folder)
rm -r plugins (folder)
然后
npm install
cordova platform add android
但是,当我再次运行cordova run android
时,权限仍然重复。
我的筹码:
Cordova Packages:
cli: 11.0.0
common: 4.0.2
create: 4.0.0
lib: 11.0.0
common: 4.0.2
fetch: 3.0.1
serve: 4.0.0
Project Installed Platforms:
android: 10.1.2
Environment:
OS: macOS Monterey 12.4
Node: v14.19.3
npm: 6.14.17
感谢所有人:)
1条答案
按热度按时间jc3wubiy1#
您正在权限节点内添加权限。请将xml更改为