React Native SDK 快速接入
当前 npm 包版本为 react-native-meshstream 1.0.5,发布于 npm。它提供统一的 JavaScript client/session API,播放器仍由应用管理。
运行代码前,请先完成安装与配置,准备 SDK Key 和可播放媒体地址,并配置应用网络策略。
最小接入
import Video from 'react-native-video';
import { MeshStream } from 'react-native-meshstream';
const client = await MeshStream.create({ key: 'your_sdk_key' });
const session = await client.createPlaybackSession({
url: 'https://cdn.example.com/live/playlist.m3u8',
contentId: 'live-channel-42',
mimeType: 'm3u8',
});
<Video source={{ uri: session.playbackUrl }} controls />;
切换内容或播放器销毁时关闭当前资源:
await session.close();
await client.close();
P2P 策略、Tracker 或 Peer 不可用时会回退 CDN,不应因此停止播放器。可使用 getStatus()、getStats() 和 getDiagnostics() 查看状态,并通过 addMeshStreamEventListener 订阅事件。
预加载与多播放器
一个 client 可以管理多个独立 session。下一条内容可先创建 session 并调用 await next.preload();只有真正播放时才把 next.playbackUrl 交给播放器。取消候选内容时关闭对应 session。
版本与验证
React Native 包版本独立于原生 SDK 版本。诊断时同时记录 npm 包版本和原生 SDK 版本。示例与发布记录见 React Native SDK GitHub 仓库。