android - 在 Android 中使用 PeerConnection.createDataChannel()

标签 android webrtc rtcdatachannel

我已经为 android 构建了 webrtc 并将 jar 文件包含在我的项目中。我想将数据通道附加到我的 PeerConnection 对象。在网络上,我们在 javascript 中执行以下操作:

sendChannel = pc.createDataChannel("sendDataChannel", {reliable: true});

sendChannel = pc.createDataChannel("sendDataChannel", {reliable: false});

其中 pc 是 PeerConnection。

我想使用 native webrtc 代码在 Android 上的 Java 中执行相同的操作。我有一点困惑。通过查看 eclipse 上的 Jar 文件,我可以看到 PeerConnection 的 createDataChannel 方法采用 String 和 Init 类型的两个参数。

PeerConnection.createDataChannel(String, Init)

我不明白我应该在第二个参数中输入什么。我发现 WebRTC 文档是针对 Web 应用程序的。我看过以下WebRTC草案文档,但无法理解清楚。

http://www.w3.org/TR/webrtc/#methods-2

如果有人可以提供一个如何使用它的小例子,将会很有帮助。

目前,我正在尝试这样做:

DataChannel dc = this.pc.createDataChannel("sendDataChannel", new DataChannel.Init());

最佳答案

您需要创建 Init 实例并操作公共(public)属性,然后再将其传递给 createDataChannel: https://code.google.com/p/webrtc/source/browse/trunk/talk/app/webrtc/java/src/org/webrtc/DataChannel.java#35

如果您在那里没有找到“可靠”,那是因为它不再起作用了。请参阅 maxRetransmits 和 maxRetransmitTimeMs。

关于android - 在 Android 中使用 PeerConnection.createDataChannel(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29195020/

相关文章:

java - Android - Activity 中 ListView 项目的自定义样式

android - 如何更改在图库中选择的项目的颜色

html - 如何在没有答案的情况下使用 WebRTC?

ios - WebRTC' 不包含位码 您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE)

javascript - 为二进制 block 创建元数据以通过 WebRTC 数据通道发送

android - 高程不适用于协调器布局中的 BottomSheet

javascript - Node.js - 使用 P2P 的客户端到服务器 WebRTC

javascript - Webrtc数据通道: saving data in file during transfer of big files

android - 无法将新记录添加到sqlite数据库android