0

我想在 config.xml 中设置 androids 使用地理位置的权限。

我不想使用 cordova-plugin-geolocation将这些设置设置为副作用,因为我所针对的 web 视图(人行横道)支持开箱即用的 GeoLocation。该插件将只是英国媒体报道。

我不想直接在 AndroidManifest.xml 中编写它,因为我正在使用cordova prepare它来防止在我的存储库中包含任何特定于平台的东西。目前,每个人都可以从头开始构建平台,而无需我们的 git-repo 中的任何特定于平台的东西。

我试过的

我查看了 cordova-plugin-geolocation 以了解他们将如何实现这一目标。

<platform name="android">
    <config-file target="AndroidManifest.xml" parent="/*">
      <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
      <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
      <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
    </config-file>
</platform>

这将在我的构建阶段返回以下内容

Error: Command failed: /bin/sh -c cordova build android
/Users/sven/.../cordova/platforms/android/build/intermediates/res/armv7/debug/xml/config.xml:34: error: Error parsing XML: unbound prefix

我的下一步是什么

我不确定为什么“rob-from-cordova-plugin-geolocation”方法不起作用,但也许将上面放入一个新插件会有所帮助?值得一试吗?

4

2 回答 2

1

您的错误是“未绑定前缀”,您是否为您在“android:name”中使用的“android”前缀提供了定义?

查看 cordova-plugin-geolocation plugin.xml 您可能需要将其添加到您的 XML 中:

xmlns:android="http://schemas.android.com/apk/res/android"

这样就定义了android命名空间。

于 2016-02-11T05:59:23.187 回答
0

cordova-custom-config通过将插件添加到您的环境中,您将能够直接从 CLI 的 config.xml 在 Cordova 中添加权限(以及许多其他额外的配置操作) 。它不会在您的应用程序中添加任何内容,并且仅包含一组 Cordova 钩子。

config.xml因此,只需在您的( )中添加 XML 夹头<config-file...,并添加 @SimonPrickett 在他的回答中所说的话。

于 2016-04-27T20:34:14.087 回答