如何在人行横道上的离子项目上允许getUserMedia

时间:2015-07-02 13:37:23

标签: cordova ionic-framework ionic crosswalk-runtime

当我用人行横道运行我的离子应用程序时,尝试通过getUserMedia api打开相机。我收到PermissionDenied错误

getUserMedia permissionDenied

如何允许访问摄像头?

2 个答案:

答案 0 :(得分:1)

我设法解决如下:

只需使用纯Cordova,不含离子或CCA。

添加人行横道插件:

  

cordova插件添加cordova-plugin-crosswalk-webview

存储库页面:https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview

并在AndroidManifest.xml中添加以下行:

  

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

在以下位置查看更多权限: https://crosswalk-project.org/documentation/manifest/permissions.html

CSP规则的重要性仍然存在,正如 QuickFix 所说。

  

:media-src:'self'mediastream:

答案 1 :(得分:0)

您是否在html文件中配置了内容安全策略? (如果您没有使用带有插件cordova-plugin-whitelist的cordova 5,请放弃此答案)

我认为为了在cordova中使用getUserMedia,您必须在CSP元标记中添加以下字符串:

media-src: 'self' mediastream:

(从this page借来的csp配置)

有关cordova-plugin-whitelist there和CSP doc there的更多信息。