首页
产品
帮助文档
博客
控制台

MRTC-Flutter SDK介绍

接入指南

  1. 添加依赖 在pubspec.yaml文件中添加对MRTC的依赖如下:

    dependencies:
    flutter:
      sdk: flutter
    mrtc_flutter: ^1.0.0
    

    然后执行flutter packages get即可拉取此库

  2. 如何使用 在需要使用到推拉流服务的.dart文件中加入

    import 'package:mrtc_flutter/mrtc_flutter.dart';
    

    即可开始编码

  3. 注意事项

    • 当再使用推拉流时应调用destory函数释放内存
    • 使用此SDK时应在iOS工程的info.plist中添加配置io.flutter.embedded_views_preview = YES
    • 尽量复用创建的nativeView,因为目前Flutter存在bug,会造成内存泄漏
    • 低版本flutter SDK iOS端首屏会出现花屏,触发一次setState()重新绘制后会恢复正常,升级flutter SDK可以解决
    • Mrtc.createNativeView返回的Widget放在渲染树上后才会真正的创建nativeView触发回调

如何使用

  1. 首先如下例创建MRTCLiveView:

       //这里的setting使用默认配置,自定义配置将在下面介绍
       MRTCSetting setting = MRTCSetting();
       //创建MRTCSample
       MRTCSample sample = MRTCSample(
           pushUrl:'推流地址',
           pushSetting:setting,
       );
       //使用MRTCSample创建MRTCLiveView
       //以下参数均为可选参数
       MRTCLiveView liveView = sample.CreateLiveView(
           pushSucceed:() {
               //推流成功回调
           },
           pushFailed:(int errCode,String errStr) {
               //推流失败回调
           },
           pushOnError:(int errCode,String errStr) {
               //推流错误回调
           },
           pushDisconnected:() {
               //推流断开回调
           }
           pullSucceed:(String pullUrl) {
               //拉流成功回调
           },
           pullFailed:(String pullUrl,int errCode,String errStr) {
               //拉流失败回调
           },
           pullOnError:(String pullUrl,int errCode,String errStr) {
               //拉流错误回调
           },
           pullDisconnected:(String pullUrl) {
               //拉流断开回调
           },
       );
    
  2. 将创建出来的liveView放入您的渲染树中如下例: