# @fishjam-cloud/react-native-webrtc 中文文档

规范地址：https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/

版本：0\.31\.1
npm 元数据更新时间：2026-10-09T13:00:54.376Z
中文译文更新时间：2026-11-14T20:27:01.344Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40fishjam-cloud/react-native-webrtc
原文对照：https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/?lang=original
项目主页：https://github.com/fishjam-cloud/fishjam-react-native-webrtc
源码仓库：https://github.com/fishjam-cloud/fishjam-react-native-webrtc

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：6.9 MB，572 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：2 个
- peer 依赖：react-native \*
- 首次发布：2026-02-03T09:48:12.587Z
- 最新版本发布：2026-10-09T13:00:45.376Z
- 近 30 天下载量：11636（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：28（近 12 个月 28 个）

## 中文简介

本地反应的 WebRTC

## 安装

```sh
npm install @fishjam-cloud/react-native-webrtc
```

也可以使用：`pnpm add @fishjam-cloud/react-native-webrtc`、`yarn add @fishjam-cloud/react-native-webrtc`、`bun add @fishjam-cloud/react-native-webrtc`

## README

[![Ad](https://swm-delivery.com/www/images/zone-gh-fishjam-1?n=2)](https://swm-delivery.com/www/delivery/ck.php?zoneid=zone-gh-fishjam-1&n=2) [![Ad](https://swm-delivery.com/www/images/zone-gh-fishjam-2?n=2)](https://swm-delivery.com/www/delivery/ck.php?zoneid=zone-gh-fishjam-2&n=2) [![Ad](https://swm-delivery.com/www/images/zone-gh-fishjam-3?n=2)](https://swm-delivery.com/www/delivery/ck.php?zoneid=zone-gh-fishjam-3&n=2)

[![React Native WebRTC](https://avatars.githubusercontent.com/u/42463376)](https://github.com/react-native-webrtc/react-native-webrtc)

# 反应- Native- WebRTC

[![npm version](https://img.shields.io/npm/v/react-native-webrtc)](https://www.npmjs.com/package/react-native-webrtc) [![npm downloads](https://img.shields.io/npm/dm/react-native-webrtc)](https://www.npmjs.com/package/react-native-webrtc) [![Discourse topics](https://img.shields.io/discourse/topics?server=https%3A%2F%2Freact-native-webrtc.discourse.group%2F)](https://react-native-webrtc.discourse.group/)

反应原生的WebRTC模块.

## 特征概览

|  | 机器人 | iOS系统 | tvOS 视频 | 马科斯\* | 视窗\* | 网络\* | 博览\* |
| :-- | :-: | :-: | :-: | :-: | :-: | :-: | :-: |
| 音频/视频 | : 重度 检查 标记 : | : 重度 检查 标记 : | : 重度 检查 标记 : | \- 说吧 | \- 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 数据通道 | : 重度 检查 标记 : | : 重度 检查 标记 : | \- 说吧 | \- 说吧 | \- 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 屏幕抓取 | : 重度 检查 标记 : | : 重度 检查 标记 : | \- 说吧 | \- 说吧 | \- 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 计划B | \- 说吧 | \- 说吧 | \- 说吧 | \- 说吧 | \- 说吧 | \- 说吧 | \- 说吧 |
| 统一计划\* | : 重度 检查 标记 : | : 重度 检查 标记 : | \- 说吧 | \- 说吧 | \- 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |
| 西缪尔克特\* | : 重度 检查 标记 : | : 重度 检查 标记 : | \- 说吧 | \- 说吧 | \- 说吧 | : 重度 检查 标记 : | : 重度 检查 标记 : |

> **马科斯** - 目前我们不积极支持macOS.  
> 今后可能还会有支助.

> **窗口** - 我们目前不支持 [反应-内生-窗口](https://github.com/microsoft/react-native-windows) 此时的平台.  
> 有谁想让球滚? 我们愿意捐款.

> **网页** - 那个 [反应 - 内生 - 网络 - 网络](https://github.com/react-native-webrtc/react-native-webrtc-web-shim) 工程为 [反应-内生-网络](https://github.com/necolas/react-native-web) 支助.  
> 允许您使用 [(将近)](https://github.com/react-native-webrtc/react-native-webrtc-web-shim/tree/main#setup) 您的密码完全一样 [反应-内生-网络](https://github.com/necolas/react-native-web) 如您想要的那样 [反应-内在](https://reactnative.dev/) 直接说.

> **博览** - 由于本单元包含本地代码,因此本单元不可用 [博览去](https://expo.dev/client) 默认应用.  
> 但是,你可以让事情通过 [expo- dev- 客户端](https://docs.expo.dev/development/getting-started/) 图书馆和树外 [配置-插件/反应-本地-网络c](https://github.com/expo/config-plugins/tree/master/packages/react-native-webrtc) 软件包.

> **统一计划** - 截至106.0.0版本,统一计划是唯一得到支持的模式.  
> 那些仍然需要B计划的人需要使用旧版本.

> **模拟** - 至111.0版本为止。 现在可以轻而易举地进行Simulcast.  
> 软件编码/解码工厂默认启用.

## WebRTC 修订版

-   目前使用的修订版: [M124 (鱼叉)](https://github.com/fishjam-cloud/webrtc/tree/fishjam-m124)
-   iOS 依赖性 : [`FishjamWebRTC`](https://cocoapods.org/pods/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`](https://github.com/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`](https://github.com/fishjam-cloud/webrtc/blob/master/RELEASING.md) 编辑 `master` 树枝。 TL; 大卫:

1.  在 macOS 构建主机 [`depot_tools`](https://chromium.googlesource.com/chromium/tools/depot_tools.git) +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`

## 指南

-   [Android 安装](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/AndroidInstallation.md)
-   [iOS 安装](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/iOSInstallation.md)
-   [tvOS 安装](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/tvOSInstallation.md)
-   [基本用途](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/BasicUsage.md)
-   [一步步调用指南](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/CallGuide.md)
-   [提高呼叫可靠性](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/Documentation/ImprovingCallReliability.md)
-   [向统一计划过渡](https://docs.google.com/document/d/1-ZfikoUtoJa9k-GZG1daN0BU3IjIanQ_JSscHxQesvU/edit#heading=h.wuu7dx8tnifl)

## 示例项目

我们有一些非常基本的例子项目 [实例](https://npmcn.com/package/%40fishjam-cloud/react-native-webrtc/examples) 目录.  
别担心,有计划包括一个更广泛的例子,包括后端.

## 社区

来加入我们 [演讲社区](https://react-native-webrtc.discourse.group/) 如果您想讨论任何与本地和WebRTC相关的话题.  
每个人受到欢迎,每一个小小的帮助.

## 相关项目

寻找额外的功能覆盖?  
这个 [反应-内生-网络c](https://github.com/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 和提交记录判断。

