跳到主要内容

导入 SDK

您可以选择如下任意一种方式:

  • 使用 CocoaPods 添加远程依赖项,导入 Framework
  • 手动导入 Framework

环境要求

  • Xcode 需要使用 Xcode 11 及以上的版本
  • 苹果设备的系统需要使用 iOS 9.0 及以上的版本
  • 如果您打算通过 CocoaPods 集成 SDK,需要使用 CocoaPods 1.10.0 及以上的版本。这是因为 CallLib SDK 5.1.1 版本后变更为 XCFramework,而 CocoaPods 是从 1.10.0 版本后才完整支持 XCFramework 的集成方式

如需安装 CocoaPods 环境,请参照 安装 CocoaPods

检查版本

在导入 SDK 前,可以前往 融云官网 SDK 下载页面 确认当前最新版本号。

CocoaPods

  1. 如果您的项目中没有 Podfile 文件,您需要打开终端并进入到项目的根目录,在终端中运行 pod init 命令,之后系统会自动创建一个默认的 Podfile 文件,在项目中的 Podfile 文件中添加如下内容:

    ruby
    pod 'RongCloudRTC/RongCallLib', '~> x.y.z'
    提示
    • CallLib 会自动依赖下载对应版本的 IMLib 库,一般不需要手动指定。注意,从 5.2.0 版本至 5.4.4(不含),CallLib 必须与其依赖的 IMKit/IMLib SDK 保持版本一致(前三位必须保持一致)。从 5.4.4 开始,CallLib 与其依赖的 IMKit/IMLib SDK 版本号前两位保持一致。CallLib 5.4.4 不可匹配小于 5.4.4 的 IMKit/IMLib SDK。
    • x.y.z 代表 CallLib 具体的版本号,您可以在融云官网 SDK 下载页面或在终端中通过先执行 pod repo update,再执行 pod search RongCloudRTC 命令在 CocoaPods 仓库查询 CallLib 最新的版本。
  2. 打开终端并进入到 Podfile 文件所在的目录,在终端中运行以下命令:

    shell
    pod install
    提示

    如果终端中出现类似 CocoaPods could not find compatible versions for 等找不到相关版本的报错,可先在终端中执行 pod repo update 命令,再执行 pod install 命令。

  3. 通过 Xcode 打开项目目录下的 xcworkspace 文件加载工程。

手动集成

  1. 您可以前往融云官网 SDK 下载页面,将音视频通话(无 UI)SDK 下载到本地。

  2. 使用 Xcode 打开您的工程,然后将下载下来的 SDK 手动拖入到您的项目中,所需的 SDK 如下:

    Framework
    • RongCallLib.xcframework
    • RongRTCLib.xcframework
    • RongIMLibCore.xcframework
    提示

    从 5.2.0 版本开始,CallLib/RTCLib 必须与其依赖的 IMKit/IMLib SDK 保持版本一致(前三位必须保持一致)。

  3. 修改您的项目配置。在 GeneralFrameworks, Libraries, and Embedded Binaries 中,将手动导入的 CallLib SDK 所有的 Framework 全部改为 Embed & Sign

工程配置

  1. 音视频通话需要用到摄像头和麦克风权限,请在工程的 Info.plist 中添加如下键值:
    • Privacy - Microphone Usage Description
    • Privacy - Camera Usage Description
  2. 请将工程中 Target → Signing & Capabilities → Background Modes 如下内容勾选:
    • Audio, AirPlay, and Picture in Picture
    • Remote notifications
提示

SDK 5.1.1 及之前的版本,音视频通话中需要用到 HTTP 请求,请在工程的 Info.plist 中添加如下键值: App Transport Security Settings 并在此键值下再添加 Allow Arbitrary Loads 并将 Value 设置为 YES

导入头文件

在需要使用的业务层导入 CallLib 头文件,即可使用 SDK 的方法来实现呼叫相关业务,示例如下:

Objective C
#import <RongCallLib/RongCallLib.h>