Quickblox cordova 示例视频 webrtc 应用程序不在 Android 设备上显示摄像头流
Posted
技术标签:
【中文标题】Quickblox cordova 示例视频 webrtc 应用程序不在 Android 设备上显示摄像头流【英文标题】:Quickblox cordova sample video webrtc app don't show camera stream on android device 【发布时间】:2016-12-08 14:36:41 【问题描述】:我尝试了一个用于从 Quickblox 进行视频通话的 Cordova 示例应用程序。我使用了来自 Quickblox http://quickblox.com/developers/Sample-webrtc-cordova 的代码。
我使用带有 (lollipop android-5.0) 的安卓手机进行测试。当与其他人进行视频通话时,我看不到来自手机的视频流。我可以看到其他视频播放到应用程序中。当我打电话或接电话时,显示我的摄像头流的视频面板变成黑色。但看不到本地或其他设备上捕获的视频。
相同的代码在笔记本电脑的 firefox 浏览器上运行得非常好。我可以看到来自我和其他人的所有视频流,只要它们来自浏览器设备而不是 Android 设备。
screenshot of mobile app
【问题讨论】:
【参考方案1】:在 Android 上,您需要请求访问视频流的权限。这可以在您的 config.xml 或插件文件中完成。
此代码块来自我正在使用的插件,在 plugin.xml 中:
从 Marshmallow 开始,您需要在运行时请求许可而不是,但为了提供兼容性,您需要同时进行这两项操作。
从 Android 6.0(API 级别 23)开始,用户授予以下权限 应用程序运行时的应用程序,而不是在他们安装应用程序时。这 方法简化了应用程序安装过程,因为用户不 需要在安装或更新应用程序时授予权限。它也是 让用户更好地控制应用程序的功能;例如, 用户可以选择让相机应用程序访问相机,但不能 到设备位置。用户可以随时撤销权限 时间,通过转到应用程序的设置屏幕。
https://developer.android.com/training/permissions/requesting.html
【讨论】:
【参考方案2】:检查权限。我遇到过同样的问题。尝试手动为手机上的应用授予权限。
【讨论】:
以上是关于Quickblox cordova 示例视频 webrtc 应用程序不在 Android 设备上显示摄像头流的主要内容,如果未能解决你的问题,请参考以下文章