有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
本文主要介绍如何快速地将腾讯云 TRTC SDK(Mac)集成到您的项目中,只要按照如下步骤进行配置,就可以完成 SDK 的集成工作。



开发环境要求

Xcode 9.0+。
OS X10.10+ 的 Mac 真机。
项目已配置有效的开发者签名。

第一步:导入 SDK

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

方案一:CocoaPods

1. 安装 CocoaPods 在终端窗口中输入如下命令(需要提前在 Mac 中安装 Ruby 环境):
sudo gem install cocoapods
2. 创建 Podfile 文件 进入项目所在路径,输入以下命令行之后项目路径下会出现一个 Podfile 文件。
pod init
3. 编辑 Podfile 文件 编辑 Podfile 文件,参考以下设置方式:
方式一:使用腾讯云 LiteAV SDK 的 pod 路径。
platform :osx, '10.10'

target 'Your Target' do
pod 'TXLiteAVSDK_TRTC_Mac', :podspec => 'https://liteav.sdk.qcloud.com/pod/liteavsdkspec/TXLiteAVSDK_TRTC_Mac.podspec'
end
方式二:使用 CocoaPod 官方源,支持选择版本号。
platform :osx, '10.10'
source 'https://github.com/CocoaPods/Specs.git'

target 'Your Target' do
pod 'TXLiteAVSDK_TRTC_Mac'
end
4. 安装与更新 SDK
在终端窗口中输入如下命令执行安装 TRTC SDK:
pod install
或使用以下命令更新本地库版本:
pod update
pod 命令执行完后,会生成集成了 SDK 的 .xcworkspace 后缀的工程文件,双击打开即可。

方案二:手动集成

1. 下载 TRTC-SDK 的 Mac 版本。
2. 打开您的 Xcode 工程项目,将第一步中下载的 framework 导入到您的工程。
3. 选择要运行的 target,选中 Build Phases 项。


4. 单击 Link Binary with Libraries 项展开,单击底下的+号图标去添加依赖库。


5. 依次添加所下载的 SDK Framework 及其所需依赖库:TXFFmpeg.xcframeworkTXSoundTouch.xcframeworklibc++.tbdAccelerate.frameworkSystemConfiguration.frameworkMetalKit.framework。添加后如下图所示:



第二步:配置 App 权限

使用 SDK 的音视频功能,需要授权麦克风和摄像头的使用权限。在 App 的 Info.plist 中添加以下两项,分别对应麦克风和摄像头在系统弹出授权对话框时的提示信息。
Privacy - Microphone Usage Description,并填入麦克风使用目的提示语。
Privacy - Camera Usage Description,并填入摄像头使用目的提示语 。 如下图所示:


如果 App 启用了 App SandboxHardened Runtime,需要勾选上 NetworkCameraAudio Input 这几个选项。
App Sandbox 配置如下图所示:


Hardened Runtime 配置如下图所示:



第三步:在项目中引用 SDK

在完成了第一步的导入和第二步的设备权限授权后,就可以在项目中引用 SDK 中提供的接口 API 了。

通过 Objective-C 或 Swift 接口引用 TRTC SDK

在 Objective-C 或 Swift 代码中使用 SDK 有两种方式:
模块引用:在项目需要使用 SDK API 的文件里,添加模块引用。
@import TXLiteAVSDK_TRTC_Mac;
头文件引用:在项目需要使用 SDK API 的文件里,引入具体的头文件。
#import TXLiteAVSDK_TRTC_Mac/TRTCCloud.h

通过 C++ 接口引用 TRTC SDK(可选)

1. 引用头文件:如果您要使用 C++ 接口来开发Mac应用,请引用 TXLiteAVSDK_TRTC_Mac.framework/Headers/cpp_interface 目录下的头文件。
#include TXLiteAVSDK_TRTC_Mac/cpp_interface/ITRTCCloud.h
2. 使用命名空间:C++ 全平台接口的接口、类型等均定义在 trtc 命名空间中,为了让代码更加简洁,建议您直接使用 trtc 命名空间。
using namespace trtc;
说明
对于 C++ 接口的使用方式,请参见 全平台(C++)API 概览