11

我的问题是:

1 -- 是否可以在我的 Native App 中有一个 WebView(由 Native 框架提供)实例,并将其扩展为支持 Webrtc,

如果 1 是 Yes,那么接下来可能是动作 Item

1 -- 在 Android 上构建 webrtc,2 -- 在 Android WebView 中扩展 Javascript 以耦合/绑定 Webrtc 调用,

请确认..

我想做的是

1 -- 我们有基于 webrtc 的语音/视频聊天应用程序在 Chrome 和 Mozilla 桌面浏览器中运行良好,因为两者都带有 webrtc...,即用户需要访问 www.xyz.com,它将启动视频/语音会话,

2 -- 在移动设备上也是一样,我们想作为一个原生应用程序,即我们正在尝试制作一个应用程序,它将具有原生 WebView 实例,我们将在其中访问 www.xyz.com 以进行语音/视频会话

3 - 我尝试了我在2中解释的方式,但似乎在应用程序框架提供的WebView实例中没有启用webrtc,所以我正在尝试添加它,这就是我的想法,

-- WebView 实例有一些扩展 Javascript 的机制,这意味着 http://dev.w3.org/2011/webrtc/editor/webrtc.html 我需要将其中一些 API 添加到 WebView 中,并且它们的实现将如果我能够在 android 和 iOS 平台上成功集成和构建 Webrtc

请给出意见....

4

7 回答 7

7

如果您想在本机应用程序中使用 webRTC,我已经构建了一个小型 android 应用程序 ( https://github.com/pchab/AndroidRTC ),它将后置摄像头共享到 nodeJS 服务器 ( https://github.com/ pcab/ProjectRTC)。我发现使用 libjingle 库最简单的方法是使用 IntelliJ IDEA。我在使用 Eclipse 和 Android Studio 时遇到了很多问题。

于 2013-07-10T20:51:56.460 回答
3

您将很难使用 WebView,尽管它至少会出现在(更新的)Android 上。iOS 上什么都没有。

如果你想要完整的原生,你可以看看我们用IceLink完成了@FM ,听起来它可能对你有用。

于 2013-10-22T13:35:38.730 回答
2

Android WebView 目前不支持 WebRTC API。

Java 和 Objective-C 绑定的工作正在进行中,尽管这可能无法解决您的问题。

于 2013-06-06T13:17:26.473 回答
2

在 Android L 版本中,这应该可以通过仅使用 Android WebView 来实现,更多内容如下:http: //developer.android.com/about/versions/android-5.0.html#WebView

于 2014-12-06T22:05:57.083 回答
1

我知道这个问题有点老了,但我发现人行横道(https://crosswalk-project.org/)是在 Android 应用程序中使用 WebRTC 的一个很好的解决方案。crosswalk 所做的是将 chromium 浏览器编译到 Android 应用程序中,并将您的网站托管在该 chromium 中,因此您将支持最新的浏览器功能,例如 WebRTC。

于 2014-07-21T17:32:39.790 回答
1

我正在构建一个带有 webview 和 webrtc 视频的本地应用程序。所以通常可以构建这样的应用程序,现在 chromium (webview) 有官方支持https://developer.chrome.com/multidevice/webview/overview,但我在编写该应用程序时遇到了很多问题。

几个问题是:

  • 支持手机和操作系统版本 - 我有 android 5.1.1 (xperia m2) 并且在运行 webrtc 出现很多问题之后。在 android 6 (xperia z5 compact) 上不工作.. 在其他手机上有时工作有时不工作......
  • 您无法确定 webview 将如何工作 - 今天 webrtc 正在工作,但明天谷歌可以添加一些安全规则,但它不会工作 - 它有点不稳定,正如我所见,有些事情取决于 os 编译。WebView 可以独立于操作系统从存储中获取更新。
  • 权限 - 有很多愚蠢的问题,基于它是本机应用程序内的浏览器这一事实,比如 - 你不能指望 webview 的权限问题,你必须在 android webview 配置和一些 android 中实现它它正在工作的版本-在其他版本中不是:-)
  • '年轻产品'仍然存在很多问题 - 例如,现在 webview 在设备信息显示方面存在一些问题(例如摄像头是正面还是背面),因此您必须找到解决此类问题的方法
  • 糟糕的视频质量 - 目前我的问题是视频质量 - 手机上的视频质量很好,低于消耗的最大资源(cpu,网络,内存)并且计算机上的视频真的很差......
  • ...还有很多

所以事实是 - 是的,这是可能的,但是在不面临很多不容易解决的问题的情况下使用它仍然不够好。

于 2017-01-12T19:25:16.407 回答
0

您实际上可以使用 html5 功能进行原生处理。因此,如果您像之前提到的那样使用 Crosswalk,但如果您真的反对使用:Crosswalk/Ionic/Angular/Cordova(太棒了),您仍然可以在本机环境中使用 Crosswalk 来用 1 替换不一致和缺少功能的 WebView基于 Blink 引擎的单一、完全兼容 WebRTC 的 WebView。

我记得读过一些关于如何在 Android Studio 中使用 Crosswalk 的指南,这是我快速搜索的一个,但只有 Google 周围有很多。 https://www.snip2code.com/Snippet/34721/How-to-use-CrossWalk-runtime-within-an-A

于 2015-03-03T07:40:56.157 回答