反应- Native- WebRTC
反应原生的WebRTC模块.
特征概览
| 机器人 | iOS系统 | tvOS 视频 | 马科斯* | 视窗* | 网络* | 博览* | |
|---|---|---|---|---|---|---|---|
| 音频/视频 | : 重度 检查 标记 : | : 重度 检查 标记 : | : 重度 检查 标记 : | - 说吧 | - 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 数据通道 | : 重度 检查 标记 : | : 重度 检查 标记 : | - 说吧 | - 说吧 | - 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 屏幕抓取 | : 重度 检查 标记 : | : 重度 检查 标记 : | - 说吧 | - 说吧 | - 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 计划B | - 说吧 | - 说吧 | - 说吧 | - 说吧 | - 说吧 | - 说吧 | - 说吧 |
| 统一计划* | : 重度 检查 标记 : | : 重度 检查 标记 : | - 说吧 | - 说吧 | - 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 西缪尔克特* | : 重度 检查 标记 : | : 重度 检查 标记 : | - 说吧 | - 说吧 | - 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
马科斯 - 目前我们不积极支持macOS.
今后可能还会有支助.
窗口 - 我们目前不支持 反应-内生-窗口 此时的平台.
有谁想让球滚? 我们愿意捐款.
网页 - 那个 反应 - 内生 - 网络 - 网络 工程为 反应-内生-网络 支助.
允许您使用 (将近) 您的密码完全一样 反应-内生-网络 如您想要的那样 反应-内在 直接说.
博览 - 由于本单元包含本地代码,因此本单元不可用 博览去 默认应用.
但是,你可以让事情通过 expo- dev- 客户端 图书馆和树外 配置-插件/反应-本地-网络c 软件包.
统一计划 - 截至106.0.0版本,统一计划是唯一得到支持的模式.
那些仍然需要B计划的人需要使用旧版本.
模拟 - 至111.0版本为止。 现在可以轻而易举地进行Simulcast.
软件编码/解码工厂默认启用.
WebRTC 修订版
- 目前使用的修订版: M124 (鱼叉)
- iOS 依赖性 :
FishjamWebRTC- Fishjam的自定义 WebRTC 与defer mic permission补丁(替换)JitsiWebRTC) (中文(简体) ). - 支持的架构
- Android: armeabi-v7a, arm64-v8a, x86, x86 64 (英语)
- iOS: arm64, x86 64 (英语)
- tvOS: arm64 (英语)
- macOS: arm64, x86 64
维护iOS WebRTC建设(FishjamWebRTC)
IOS的侧舰对抗 FishjamWebRTC - 一个可可Pods sock 发布自 fishjam-cloud/webrtc 包着一个预建 WebRTC.xcframework源代码补丁 fishjam-m124 分支; pockespec and release tooltiping live on 树枝; 树枝谱和放出工具 master。 。 。 .
何时剪取新版本
剪下一个新的 FishjamWebRTC 版本何时 以下任何一项 发生 :
- 一个新的补丁降落在
fishjam-m124我们需要客户端(例如另一个)audio_device_ios.mm更改,一个网络接口路径的固定,一个隐秘更新). - 我们重新基地
fishjam-m124进入较新的jitsi/webrtc标签(例如从v124.0.2改为v124.0.3) (中文(简体) ). - 上游WebRTC的安全咨询需要找到一个固定.
没错 没有 需要切换新的 FishjamWebRTC 仅能触摸到此 RN 包装器的更改( N)ios/**.{h,m,swift},联合来文来源)。 这些船是正常的 @fishjam-cloud/react-native-webrtc 碰头了.
版本
<upstream-version>.<fishjam-patch-N>,比如说. 124.0.2.1。 。 。 .
- 前三部分 = jitsi 上游版本 构件被补上.
- 第四部分 = Fishjam 补丁计数器对准该基地,开始于
1,每释放一次递增. - 上游再基地(例如:jitsi船舶)
124.0.3),重置计数器:下一次发布是124.0.3.1。 。 。 . - 带线
~> 124.0.2.0在 jitsi 上接受任何 Fishjam 补丁124.0.2确切的说,或者说针形.
如何切断释放
全程(建造、标记、GH发布、干线出版、烟雾测试) fishjam-cloud/webrtc是因为 RELEASING.md 编辑 master 树枝。 TL; 大卫:
- 在 macOS 构建主机
depot_tools+a 键fetch webrtc_ios退出, 切换客户端src/改为fishjam-m124运行gclient sync,则tools_webrtc/ios/build_ios_libs.py --build_config release --arch device:arm64 simulator:arm64 simulator:x64。 。 。 . - 验证补丁在已建二进制中 :
strings WebRTC.xcframework/*/WebRTC.framework/WebRTC | grep -c "<unique-string-from-patch>"- 每一片必须有一个非零数。 (释放建立条C++符号,故使用)strings没有nm. ) (中文(简体) ) - 将 X 框架绑定为
FishjamWebRTC.xcframework.zip标记vX.Y.Z.N打开fishjam-m124,推,和gh release create带了拉链. - 打开
master: 颠倒s.version内ios/FishjamWebRTC.podspec匹配,承诺,推动. pod trunk push ios/FishjamWebRTC.podspec --allow-warnings(一次)pod trunk register(每个身份).
新的FishjamWebRTC发布后
在这个回放中:
- 弹出依赖性
FishjamReactNativeWebrtc.podspec数字 :s.dependency 'FishjamWebRTC', '~> X.Y.Z.0'(或如需要,精确的指针). - 弹出
version内package.json—— 如果基础的WebRTC更改是用户可观察的,则小起伏,另作补丁. - 测试
cd ios && pod install在一个消费的应用中,并锻炼 受影响的行为端到端.
开始
使用以下首选的软件包安装方法之一即可即刻出发.
别忘了遵循下面的平台指南,以涵盖任何额外的所需步骤.
无 : npm install react-native-webrtc --save
线条 : yarn add react-native-webrtc
时间 : pnpm install react-native-webrtc
指南
示例项目
我们有一些非常基本的例子项目 实例 目录.
别担心,有计划包括一个更广泛的例子,包括后端.
社区
来加入我们 演讲社区 如果您想讨论任何与本地和WebRTC相关的话题.
每个人受到欢迎,每一个小小的帮助.
相关项目
寻找额外的功能覆盖?
这个 反应-内生-网络c 组织提供了一些软件包,在开发实时通信应用程序时,这些软件包非常有用.