【问题标题】:Add android.permission.CAMERA with Cordova使用 Cordova 添加 android.permission.CAMERA
【发布时间】:2017-01-02 01:36:58
【问题描述】:

我使用的是最新版本的 Cordova (6.3.1),我希望 AndroidManifest.xml 中出现以下权限:

<uses-permission android:name="android.permission.CAMERA" />

手动添加这一行不起作用,因为每次运行命令cordova run android时都会重新生成 XML

我已将cordova-plugin-camera 添加到我的项目中

cordova plugin add cordova-plugin-camera

此插件不会在 AndroidManifest.xml 中添加 CAMERA 权限

不知道是不是正常

如何将此权限添加到我的项目中?


编辑: 通常,Cordova 插件负责将所需的权限添加到清单中。相机插件没有添加这个特定的权限,我想知道:

  • 如果插件应该添加此权限(错误?我在他们的 Jira 跟踪器上打开了一个问题)
  • 如果我可以自己手动添加此权限,可能在 Cordova 的 config.xml 中

【问题讨论】:

  • 控制台有什么错误吗?
  • 控制台没有错误。清单中不存在该权限。
  • 请删除并重新安装您的相机插件。然后检查您的清单文件。谢谢
  • @HassanALi 我刚刚尝试过,但 CAMERA 权限没有出现在清单中:(
  • 如果手动添加这个权限是不是不行?

标签: android cordova plugins permissions camera


【解决方案1】:

我认为相机插件从未将此权限添加到AndroidManifest.xml。查看 Github 存储库,WRITE_EXTERNAL_STORAGE 是在 2013 年 6 月添加的 (CB-3654),但我没有看到相机本身的任何内容。不知道为什么会这样,但您可以自己添加对AndroidManifest.xml 的权限,或者在项目的config.xml 文件中添加config-file 指令,例如:

    <config-file target="AndroidManifest.xml" parent="/*" mode="merge">
        <uses-permission android:name="android.permission.CAMERA" />
        <uses-feature android:name="android.hardware.camera" />
        <uses-feature android:name="android.hardware.camera.autofocus" />
    </config-file>

【讨论】:

  • 我必须将xmlns:android="http://schemas.android.com/apk/res/android" 添加到config.xml 中的根widget 标记才能使其工作。
【解决方案2】:

您是在构建原生应用还是混合应用?

本地人可以参考这个网站:

https://developer.android.com/reference/android/hardware/Camera.html

【讨论】:

  • Cordova 是一个构建混合应用程序的工具,我正在使用 Cordova CLI 来构建我的应用程序
  • 仅供参考:它是框架,如果您需要更改 android 的权限,您可以在配置文件中进行。
猜你喜欢
  • 1970-01-01
  • 2016-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-27
相关资源
最近更新 更多