sow*_*ksr 0 android getusermedia ionic-framework ionic4 ionic-webview
这发生在离子应用的Android版本中。我正在使用iframe测试getUserMedia。webrtc的演示页面给我“ GetUserMedia:不允许的错误”。我已经在AndroidManifest.xml中授予了所有权限,但仍然无法访问相机。为了获得外部网站的摄像头访问权,还有什么需要做的吗?
home.html
<ion-content class= 'padding has-subheader'>
<iframe class= 'webPage' name= "eventsPage" src="https://webrtc.github.io/samples/src/content/getusermedia/gum/">
</iframe>
</ion-content>
Run Code Online (Sandbox Code Playgroud)
config.xml
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
<plugin name="cordova-plugin-device" spec="2.0.2" />
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
<plugin name="cordova-plugin-ionic-webview" spec="^2.0.0" />
<plugin name="cordova-plugin-ionic-keyboard" spec="^2.0.5" />
<plugin name="cordova-plugin-camera" spec="^4.0.3" />
<plugin name="android-camera-permission" spec="^1.0.0" />
<plugin name="cordova-plugin-media" spec="^5.0.2" />
<plugin name="cordova-opentok-android-permissions" spec="^1.0.1" />
<plugin name="cordova.plugins.diagnostic" spec="^4.0.10" />
<plugin name="cordova-plugin-android-permissions" spec="^1.0.0" />
<plugin name="cordova-plugin-media-capture" spec="^3.0.2" />
<plugin name="cordova-plugin-compat" spec="^1.2.0" />
<plugin name="cordova-plugin-whitelist" spec="^1.3.3" />
<engine name="android" spec="7.0.0" />
Run Code Online (Sandbox Code Playgroud)
被标记为重复项:getUserMedia是否可以在Android应用程序的ionic-webview中工作?
尽管如此,我还是在下面复制并粘贴了我的答案
更新-04/11/2018-正常工作的离子示例
如所承诺的,我今天对此有所了解。现在要完全回答您的问题:是的,您可以在Android上的ionic中访问getUserMedia。
在这里查看我的GitHub项目以获取工作示例和屏幕截图。
在此处查看此功能分支,该分支成功在iframe中测试了getUserMedia
涉及的步骤:
您还可以看到React Native,Android和Cordova的替代版本。
由于Apple对WKWebView和UIWebView的安全限制,截至此更新之时,仍不支持iOS。
iframe:要确保getUserMedia在其中起作用,请确保您:
<iframe allow="camera; microphone">请阅读以下有关iframe功能的详细信息:
是的,理论上它可以工作。请参阅下面的示例,了解如何在Android中执行此操作。对于iOS,由于WKWebView的限制,目前尚无法实现。我已经链接到下面的StackOverFlow问题,即人们如何在Ionic所基于的Cordova上实现这一目标。
无论框架如何,要使getUserMedia在Android上运行都需要实现的核心主要步骤是:
您面临的具体问题是4.或5。看起来该项目使您走到了那么远。权限错误很可能是由于您的应用使用的Chrome WebView不会覆盖该权限,并且/或者是,并且用户尚未手动启用该权限。
因此,在Ionic框架内,您需要扩展其浏览器以访问对onRequestPermissionsResult的覆盖。为此,您需要制作一个Cordova插件,然后创建Ionic绑定。
可在此处找到有关类似框架的更多信息:
| 归档时间: |
|
| 查看次数: |
1484 次 |
| 最近记录: |