播放器 SDK SDK 集成指引

如何快速地将腾讯云视立方·播放器 LiteAVSDK_Player(iOS)集成到你的项目中,按照如下步骤进行配置,就可以完成 SDK 的集成工作。

相关产品
播放器 SDK 产品页,含版本规格、价格与购买入口。

一、开发环境要求

·Xcode 9.0+。

·iOS 9.0 以上的 iPhone 或者 iPad 真机。

·项目已配置有效的开发者签名。

二、集成 LiteAVSDK

你可以选择使用 CocoaPods 自动加载的方式,或者先下载 SDK,再将其导入到你当前的工程项目中。

三、CocoaPods集成

1. 安装 CocoaPods
在终端窗口中输入如下命令(需要提前在 Mac 中安装 Ruby 环境):

sudo gem install cocoapods

2. 创建 Podfile 文件
进入项目所在路径,输入以下命令行之后项目路径下会出现一个 Podfile 文件。

pod init

3. 编辑 Podfile 文件
使用 CocoaPod 源,支持选择版本号。编辑 Podfile 文件:

Pod 方式直接集成最新版本 TXLiteAVSDK_Player:

platform :ios, '9.0'source 'https://github.com/CocoaPods/Specs.git'target 'App' dopod 'TXLiteAVSDK_Player'end

如果你需要指定某一个特定版本,可以在 podfile 文件中添加如下依赖:

pod 'TXLiteAVSDK_Player', '~> 10.3.11513'

如果你需要集成播放高级版本(Premium)SDK,在 podfile 文件中添加如下依赖:

platform :ios, '9.0'source 'https://github.com/CocoaPods/Specs.git'target 'App' dopod 'TXLiteAVSDK_Player_Premium'end

4. 更新并安装 SDK

·在终端窗口中输入如下命令以更新本地库文件,并安装 LiteAVSDK:

pod install

·或使用以下命令更新本地库版本:

pod update

pod 命令执行完后,会生成集成了 SDK 的 .xcworkspace 后缀的工程文件,双击打开即可。

四、手动集成SDK

1. 下载 最新版本 TXLiteAVSDK_Player 的 SDK + Demo 开发包。

如果你需要集成播放高级版本(Premium)SDK,请 单击此处 下载。

2. 将 SDK/TXLiteAVSDK_Player.xcframework 添加到待集成的工程中,并勾选 Do Not Embed。

3. 需要配置项目 Target 的 -ObjC,否则会因为加载不到 SDK 的类别而导致 Crash。

打开 Xcode -> 选择对应的 Target -> 选择"Build Setting" Tab -> 搜索"Other Link Flag" -> 输入"-ObjC"

4. 添加相应的库文件(SDK 目录里)。

·TXFFmpeg.xcframework:将.xcframework 文件添加到项目工程中,并在“General > Frameworks, Libraries, and Embedded Content”中将其设置为“Embed&Sign”,并在“Project Setting > Build Phases > Embed Frameworks”中进行检查,设置"Code Sign On Copy"选项为勾选状态,

·TXSoundTouch.xcframework:将.xcframework 文件添加到项目工程中,并在“General > Frameworks, Libraries, and Embedded Content”中将其设置为“Embed&Sign”,并在“Project Setting > Build Phases > Embed Frameworks”中进行检查,设置 Code Sign On Copy 选项为勾选状态。

同时,切换到 Xcode 的 “Build Settings > Search Paths”,在“Framework Search Paths”中添加上述 Framework 所在的路径。

·MetalKit.framework:打开 Xcode,切换到“project setting > Build Phases > Link Binary With Libraries”,选择左下角的“+”号,并输入“MetalKit”,并加入项目工程中:

·ReplayKit.framework:打开 Xcode,切换到“project setting > Build Phases > Link Binary With Libraries”,选择左下角的“+”号,并输入“ReplayKit”,并加入项目工程中:

使用同样的方式添加如下系统库:

·系统 Framework 库:SystemConfiguration, CoreTelephony, VideoToolbox, CoreGraphics, AVFoundation, Accelerate, MobileCoreServices。

·系统 Library 库:libz, libresolv, libiconv, libc++, libsqlite3。

5. 从 11.7.15343 版本 以后,Player SDK适配了苹果的隐私清单,下载对应SDK并将SDK内 TXLiteAVSDK_Player.bundle 添加到项目工程里:

如果是 pods 引入 SDK 的话,可以忽略上述步骤。

五、画中画功能

如果需要使用画中画能力,请按如下的方式进行配置,若无此部分需求可以忽略。

1. 为了使用 iOS 的画中画(Picture-In-Picture),请将 SDK 升级到10.3版本及以上。

2. 使用画中画能力时,需要开通后台模式。XCode 选择对应的Target > Signing & Capabilities > Background Modes,勾选“Audio, AirPlay, and Picture in Picture”,如下:


六、在工程中引入 SDK

项目代码中使用 SDK 有两种方式:

·方式一: 在项目需要使用 SDK API 的文件里,添加模块引用。

@import TXLiteAVSDK_Player;// 如果你使用的的 Premium 版本,请用: @import TXLiteAVSDK_Player_Premium;

·方式二:在项目需要使用 SDK API 的文件里,引入具体的头文件。

#import "TXLiteAVSDK_Player/TXLiteAVSDK.h"// 如果你使用的的 Premium 版本,请用: #import "TXLiteAVSDK_Player_Premium/TXLiteAVSDK.h"

七、给 SDK 配置 License 授权

1. 单击 License 申请 获取测试用 License,不配置 License 将会播放时视频失败,具体操作请参见 测试版 License。你会获得两个字符串:一个字符串是 licenseURL,另一个字符串是解密 key。

2. 获取到 License 信息后,在调用 SDK 的相关接口前,需要初始化配置 License,详细教程请参见 配置查看 License。

八、项目里面同时集成了直播 SDK/实时音视频/播放器等 LiteAVSDK 系列的多个 SDK 报符号冲突问题怎么解决?

如果集成了2个或以上产品(直播、播放器、TRTC、短视频)的 LiteAVSDK 版本,编译时会出现库冲突问题,因为有些 SDK 底层库有相同符号文件,这里建议只集成一个全功能版 SDK 可以解决,直播、播放器、TRTC、短视频这些都包含在一个 SDK 里面。具体请参见 SDK 下载。

九、Swift 项目工程里怎么调用 SDK 的 API 方法?

如果在 Swift 的项目工程里想调用 SDK 的 API 接口,有下面两种方式:

方式一:使用桥接头文件

1. 创建桥接头文件。例如***-Bridging-Header.h,并添加如下代码#import <TXLiteAVSDK_Player/TXLiteAVSDK.h>。

2. 配置工程BuildSetting的Objective-c Bridging header选项。设置桥接文件的路径并添加到 Objective-c Bridging header中( 如:$(SRCROOT)/SwiftCallOC/***-Bridging-Header.h,根据项目具体路径确定),编译运行即可。

方式二:使用SDK内的 module.modulemap 文件

1. 检查TXLiteAVSDK_Player.framework里是否有包含Modules – module.modulemap文件(Player SDK 默认都提供)。

2. 配置工程BuildSetting的Swift Compiler – Search Paths选项。添加module.modulemap文件所在的目录路径或其上层目录路径,此处可为:${PODS_ROOT}/TXLiteAVSDK_Player/TXLiteAVSDK_Player/TXLiteAVSDK_Player.framework/Modules(根据项目具体路径确定)。

3. 在需要调用的类顶部,使用import TXLiteAVSDK_Player来进行引入并调用相关的方法。

以上集成的方式及 Demo,可以具体参见 GitHub Demo。

赞 (0)
上一篇 4天前
下一篇 4天前