@fishjam-cloud/react-native-webrtc

中文文档
0.31.1发布于 2026/10/09MITTypeScriptESM + CJS构建来源已验证近 30 天下载 1.2万

本地反应的 WebRTC

中文使用文档
文档目录12 节
  1. 特征概览
  2. WebRTC 修订版
  3. 维护iOS WebRTC建设(FishjamWebRTC)
  4. 何时剪取新版本
  5. 版本
  6. 如何切断释放
  7. 新的FishjamWebRTC发布后
  8. 开始
  9. 指南
  10. 示例项目
  11. 社区
  12. 相关项目

Ad Ad Ad

React Native WebRTC

反应- Native- WebRTC

npm version npm downloads Discourse topics

反应原生的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; 大卫:

  1. 在 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。 。 。 .
  2. 验证补丁在已建二进制中 : strings WebRTC.xcframework/*/WebRTC.framework/WebRTC | grep -c "<unique-string-from-patch>" - 每一片必须有一个非零数。 (释放建立条C++符号,故使用) strings没有 nm. ) (中文(简体) )
  3. 将 X 框架绑定为 FishjamWebRTC.xcframework.zip标记 vX.Y.Z.N 打开 fishjam-m124,推,和 gh release create 带了拉链.
  4. 打开 master: 颠倒 s.version 内 ios/FishjamWebRTC.podspec 匹配,承诺,推动.
  5. pod trunk push ios/FishjamWebRTC.podspec --allow-warnings (一次) pod trunk register (每个身份).

新的FishjamWebRTC发布后

在这个回放中:

  1. 弹出依赖性 FishjamReactNativeWebrtc.podspec数字 : s.dependency 'FishjamWebRTC', '~> X.Y.Z.0' (或如需要,精确的指针).
  2. 弹出 version 内 package.json —— 如果基础的WebRTC更改是用户可观察的,则小起伏,另作补丁.
  3. 测试 cd ios && pod install 在一个消费的应用中,并锻炼 受影响的行为端到端.

开始

使用以下首选的软件包安装方法之一即可即刻出发.
别忘了遵循下面的平台指南,以涵盖任何额外的所需步骤.

无 : npm install react-native-webrtc --save
线条 : yarn add react-native-webrtc
时间 : pnpm install react-native-webrtc

指南

示例项目

我们有一些非常基本的例子项目 实例 目录.
别担心,有计划包括一个更广泛的例子,包括后端.

社区

来加入我们 演讲社区 如果您想讨论任何与本地和WebRTC相关的话题.
每个人受到欢迎,每一个小小的帮助.

寻找额外的功能覆盖?
这个 反应-内生-网络c 组织提供了一些软件包,在开发实时通信应用程序时,这些软件包非常有用.

版本与发布记录

@fishjam-cloud/react-native-webrtc 共发布 28 个版本,首次发布于 2026/02/03;过去 12 个月发布了 28 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.31.1latest2026/10/091 个月前
0.31.02026/09/301 个月前
0.30.62026/09/211 个月前
0.30.52026/09/142 个月前
0.30.42026/09/112 个月前
0.30.32026/09/092 个月前

其他发布通道:rc → 0.30.0-rc.0。

关于 @fishjam-cloud/react-native-webrtc 的常见问题

@fishjam-cloud/react-native-webrtc 是什么?

本地反应的 WebRTC

如何安装 @fishjam-cloud/react-native-webrtc?

在项目目录运行 npm install @fishjam-cloud/react-native-webrtc,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react-native(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fishjam-cloud/react-native-webrtc 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fishjam-cloud/react-native-webrtc 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@fishjam-cloud/react-native-webrtc 可以商用吗?

@fishjam-cloud/react-native-webrtc 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@fishjam-cloud/react-native-webrtc 的下载量有多少?

根据 npm 官方下载统计,@fishjam-cloud/react-native-webrtc 在 2026/10/15 – 2026/11/13 这 30 天内被下载 11,636 次,日均约 388 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fishjam-cloud/react-native-webrtc 还在维护吗?

最新版本 0.31.1 发布于 2026/10/09(1 个月前);至今共发布 28 个版本,其中过去 12 个月发布了 28 个;首次发布于 2026/02/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。