【问题标题】:Enable WebRTC Support in WKWebView/UIWebView在 WKWebView/UIWebView 中启用 WebRTC 支持
【发布时间】:2021-03-28 19:55:21
【问题描述】:

我正在webview 中使用 WebRTC 开发一个颤振应用程序。在 android 上,它按预期工作,但在 iOS 版本上遇到问题。我已阅读线程Apple SupportSO Thread

两个线程状态,iOS webview 中不允许使用 WebRTC。我在模拟器/真实设备中测试了我的代码,但没有成功。

所以,我的问题是有人知道如何在 iOS 网页视图中运行 WebRTC?

这就是我展示网络视图的方式

InAppWebView(
                initialUrl: widget.callType == AppConstant.INCOMING ? incomingUrl : outGoingUrl,
                initialOptions: InAppWebViewGroupOptions(
                  crossPlatform: InAppWebViewOptions(
                      mediaPlaybackRequiresUserGesture: false,
                      debuggingEnabled: true,
                      clearCache: true,
                      javaScriptEnabled: true,
                      preferredContentMode: UserPreferredContentMode.MOBILE
                  ),
                ),
                onWebViewCreated: (InAppWebViewController controller) {
                  //web view created
                },
                androidOnPermissionRequest: (InAppWebViewController controller, String origin, List<String> resources) async {
                  print('resource list : ${resources.toString()}');
                  return PermissionRequestResponse(resources: resources, action: PermissionRequestResponseAction.GRANT);
                }
            );

【问题讨论】:

标签: android ios swift flutter wkwebview


【解决方案1】:

ios Webview 和 WKWebView 直到现在还没有 WebRTC 支持。

从 ios 14.3 开始,ios 提供对 WKWebView 的支持: https://leemartin.medium.com/ios-14-3-brings-webrtc-to-wkwebview-closing-gap-on-ios-accessibility-90a83fa6bda2

您需要在手机和/或 Xcode 12.3 中更新您的 iOS。

此外,根据您的 webview 插件(在我的情况下,我使用的是 cordova-plugin-inappbrowser),可能需要对其进行修改以添加视频、摄像头和 VoIP 的权限。

【讨论】:

  • 我正在使用 iOS 14.3 管理设备。我正在使用颤振开发,所以不能首先尝试 Cordova 插件。请添加使用cordova的参考/示例代码。
  • iOS 14.3 已启用 webrtc 访问。它正在工作。未来的读者可以通过在 iOS Safari 浏览器中运行它们来检查列出的示例 webrtc.github.io/samples 中的功能。
  • @FaiiziiAwan 您是否设法在 iOS 设备(iOS 14.3 和/或更高版本)上运行您的应用程序?
  • 我很惊讶地看到 WebRTC 在使用 Chrome 和 Firefox 的 IOS 以及 IpadOS (Chrome/Firefox) 上运行良好。这种兼容性也是由于 IOS 14.3 造成的吗?因为我还没有看到任何公告,也没有 WebRTC 兼容性表更新
猜你喜欢
  • 2015-09-29
  • 1970-01-01
  • 2017-08-24
  • 2014-12-06
  • 2017-06-03
  • 1970-01-01
  • 1970-01-01
  • 2018-07-24
  • 2017-04-25
相关资源
最近更新 更多