iOS
This document describes how to import the SDK into your project.
Environment Requirements
Xcode 9.0 or later
iPhone or iPad with iOS 9.0 or later
A valid developer signature for your project
Step 1. Import the SDK
You can use CocoaPods or download and import the SDK manually into your project.
Method 1. Use CocoaPods
1. Install CocoaPods.
Enter the following command in a terminal window (you need to install Ruby on your Mac first):
sudo gem install cocoapods
2. Create a Podfile.
Go to the directory of your project and enter the following command to create a Podfile in the directory.
pod init
3. Edit the Podfile.
Choose an appropriate edition according to your project needs and edit the Podfile:
Option 1: Lite
The installation package is the smallest but only supports two features: real-time communication (TRTC) and live player (TXLivePlayer). To choose this version, edit the Podfile as follows:
platform :ios, '8.0'target 'App' dopod 'TXLiteAVSDK_TRTC', :podspec => 'https://liteav.sdk.qcloud.com/pod/liteavsdkspec/TXLiteAVSDK_TRTC.podspec'end
Option 2: Professional
The installation package includes real-time communication (TRTC), live player (TXLivePlayer), RTMP streaming (TXLivePusher), VOD player (TXVodPlayer), short video recording and editing (UGSV), and many other features. To choose this edition, edit the Podfile as follows:
platform :ios, '8.0'target 'App' dopod 'TXLiteAVSDK_Professional', :podspec => 'https://liteav.sdk.qcloud.com/pod/liteavsdkspec/TXLiteAVSDK_Professional.podspec'end
4. Update the local repository and install the SDK
Enter the following command in a terminal window to update the local repository and install the SDK:
pod install
Or, run this command to update the local repository:
pod update
An XCWORKSPACE project file integrated with the TRTC SDK will be generated. Double-click to open it.
Method 2. Download the SDK and import it manually
1. Download and decompress the SDK package.
2. Open your Xcode project, select the target you want to run, and click Build Phases.
3. Expand Link Binary With Libraries and click the + icon at the bottom to add dependent libraries.
4. Add the downloaded
TXLiteAVSDK_TRTC.Framework
(or TXLiteAVSDK_Professional.Framework
), TXFFmpeg.xcframework
, TXSoundTouch.xcframework
, and the frameworks they depend on: GLKit.framework
, AssetsLibrary.framework
, SystemConfiguration.framework
, libsqlite3.0.tbd
, CoreTelephony.framework
, AVFoundation.framework
, OpenGLES.framework
, Accelerate.framework
, MetalKit.framework
, libresolv.tbd
, MobileCoreServices.framework
, libc++.tbd
, CoreMedia.framework
.
5. Click General, expand Frameworks, Libraries, and Embedded Content, and check if the dynamic libraries required by
TXLiteAVSDK_TRTC.framework
(TXFFmpeg.xcframework and TXSoundTouch.xcframework) have been added and set to Embed & Sign. If not, click + at the bottom to add them.
Step 2. Configure app permissions
1. To use the audio/video features of the SDK, you need to grant the application mic and camera permissions. Add the two items below to
Info.plist
of your application. Their content is what users see in the mic and camera access pop-up windows.Privacy - Microphone Usage Description. Include a statement specifying why mic access is needed.
Privacy - Camera Usage Description. Include a statement specifying why camera access is needed.
2. If you want the SDK to run in the background, select your project, under the Capabilities tab, set Background Modes to ON, and select Audio, AirPlay, and Picture in Picture.
Step 3. Import the SDK into the project
After completing the first step of importing and the second step of granting device permissions, you can import the APIs provided by the SDK into your project.
Using Objective-C or Swift APIs
There are two ways to use the SDK in Objective-C or Swift:
Import the module: Import the SDK module in the files that will use the SDK APIs.
@import TXLiteAVSDK_TRTC;
Import the header file: Import the header file in the files that will use the SDK APIs.
#import "TXLiteAVSDK_TRTC/TRTCCloud.h"
Note:
Using C++ APIs (optional)
If your project imports the SDK through a cross-platform framework such as Qt or Electron, import the header files in the
TXLiteAVSDK_TRTC.framework/Headers/cpp_interface
directory:#include "TXLiteAVSDK_TRTC/cpp_interface/ITRTCCloud.h"
Note: