You need to enable JavaScript to run this app.
导航
集成 Flutter 点播播放器 SDK
最近更新时间:2024.07.30 18:26:45首次发布时间:2024.07.30 18:26:45

点播播放器 SDK 提供播放点播视频的能力。本文介绍如何将点播播放器 SDK 集成到您的 App 中。

环境要求

  • Flutter 版本:Flutter stable channel 3.0.0 及以上版本
  • Dart 版本:Dart 2.17.0 及以上版本
  • 系统版本:
    • 支持 iOS 11.0 及以上版本
    • 支持 Android 5.0(minSdkVersion:21)及以上版本
  • 开发工具:推荐使用 Visual Studio Code 或 Android Studio 最新版本

前提条件

  • 您已开通定制版套餐。详见计费说明
  • 获取点播 License 文件、创建 SDK 应用时填写的 App 英文名称以及应用创建后生成的 App ID。详见获取 License

项目结构说明

Flutter 点播播放器 SDK 的项目结构如下所示。

├── CHANGELOG.md
├── LICENSE
├── README.md
├── analysis_options.yaml
├── android
├── bdlive_vod_player.iml
├── example
├── ios
├── lib
├── pubspec.lock
├── pubspec.yaml
└── test

关键文件夹及说明如下表所示。

文件夹

说明

是否必需

lib

Flutter 基于原生 SDK 开发的插件层。

android

Android 端原生代码。

ios

iOS 端原生代码。

example

Flutter 点播播放器 Demo。

集成步骤

步骤一:添加依赖

Flutter 点播播放器 SDK 目前仅支持本地依赖。

  1. 点击此处,下载最新版本的 SDK 包至本地,并解压。
  2. 将 SDK 文件夹复制到您的项目文件夹下。
  3. pubspec.yaml 文件中添加 bdlive_vod_player 依赖项,如下所示:
    dependencies:
        flutter:
            sdk: flutter
        # 将 <SDK_PATH> 替换为项目下 SDK 的文件路径。
        bdlive_vod_player: 
            path: <SDK_PATH>
    

步骤二:平台配置

为 Android 和 iOS 分别进行相应配置。

Android

  1. 配置 Gradle。

    1. 增加以下配置到项目根目录下的 build.gradle 文件。

      allprojects {
          repositories {
              google()
              mavenCentral() // 添加 Maven central 中央仓库。
              jcenter()
              maven {
                  url "https://artifact.bytedance.com/repository/Volcengine/" // 火山引擎的官方仓库地址。
              }
          } 
      } 
      
    2. 增加以下配置到 module 目录下的 build.gradle 文件。

      android {
          defaultConfig {
              minSdkVersion 21
              ndk {
                  abiFilters "arm64-v8a"
              }
          } 
       
         // 开启数据绑定。
          dataBinding {
              enabled = true
          } 
      } 
       
      // 引入所需依赖。
      dependencies { 
          // 引入点播播放器 SDK。
          implementation "com.bytedance.bdlive:bdlive-vodplayer:1.0.1"
      } 
      
  2. module 目录下的 AndroidManifest.xml 文件中添加以下权限配置。

    <!-- 访问本地存储权限 -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    
    <!-- 网络状态权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    
  3. module 目录下的 proguard-rules.pro 文件中添加混淆规则。

    -keep class com.pandora.**{*;}
    -keep class com.ss.**{*;} 
    -keep class com.bytedance.**{*;}
    -keep class com.pandora.ttlicense2.**{*;}
    -keep class com.bytertc.**{*;}
    -keep class org.webrtc.**{*;}
    -keep class log.**{*;}
    

iOS

  1. 在 Xcode 的 App Target 下,关闭 Bitcode。
    图片
    1. 单击 Build Settings 页签。
    2. Build Options 区域,将 Enable Bitcode 置为 No
  2. 在 Xcode 项目的 Podfile 文件中添加以下 Source:
    source 'https://github.com/volcengine/volcengine-specs.git'
    

步骤三:添加 License 文件

将您获取到的点播 License 文件拖入您 Flutter 项目的 assets 目录下。后续在初始化 SDK 时需传入该 License 文件的路径。
路径示例:

assets
└── vod.lic

后续操作

有关如何使用 Flutter 点播播放器 SDK 播放视频,详见功能实现