使用 JusTalk Cloud SDK for iOS

简介

本篇文档描述了 JusTalk Cloud SDK for iOS(以下简称 SDK) 的导入和初始化,请完成以下步骤:准备 SDK 文件、文件拷贝、工程设置和 SDK 初始化。在完成 SDK 的导入和初始化之后,您的 APP 才能开始集成音视频会议等功能。

准备 SDK 文件

若您还未获取 SDK,请前往下载页面,下载最新的 SDK 文件。

在 Mac 环境下解压下载的压缩包,解压后的文件内包含了 JCSDK 和 Project 这两个文件。

  1. JCSDK 是我们要导入的 SDK 文件,该文件内包含了 include、lib 和 JCApi.framework 三个文件。

    • include 包含了一些头文件;
    • lib 包含了 libmtc.a 和 libzmf.a 两个库文件;
    • JCApi.framework 是 JCApi 接口文件。
  2. Project 文件内包含了一个可运行的工程,该工程简单实现了会议的功能。

文件拷贝

  1. 拷贝整个 JCSDK 文件到您的工程所在目录文件下

  2. 拷贝完成后,应如下图(仅供参考,也许您的工程有专门放置第三方库的目录文件)

工程设置

具体步骤如下:

  1. 导入 iOS 系统库,完成后应包含图示中的6个库,如下图

    打开您的工程,点击 Build Phases -> 展开 Link Binary with Libraries -> 点击"+",如下图

    添加对应的6个库,如下图

  2. 导入 JCSDK 目录中的 lib 库文件,点击 Build Phases -> 展开 Link Binary with Libraries -> 点击"+" -> 点击 Add Other,如下图

    选择 JCSDK目录 -> lib目录 -> ios目录 -> libmtc.a和libzmf.a文件,并导入这两个文件

    导入完成后,应如下图

  3. 导入 JCApi.framework,导入过程请参照第2步,结果应如下图

  4. 设置路径,点击 Build Settings -> 展开 Search Paths,如下图

    设置 Library Search Paths,设置 lib 库文件的路径。在完成第2步后,Xcode 会自动生成该路径,如下图

    注:如果 Xcode 没有自动生成路径,用户要根据 lib 库文件所在目录,手动设置路径。

    比如Demo工程中的路径 $(PROJECT_DIR)/3rd/JCSDK/lib/ios

    $(PROJECT_DIR)表示工程所在目录。

    /3rd/JCSDK/lib/ios表示 lib 库文件所在目录的层级关系。

    设置 Header Search Paths,设置头文件的路径。必须手动设置,可复制 Library Search Paths 的路径 $(PROJECT_DIR)/3rd/JCSDK/lib/ios,然后把末尾的 lib/ios 替换成 include,结果如下图

    设置 Framework Search Paths,设置 JCApi.framework 文件的路径。在完成第3步后,Xcode 会自动生成该路径(如果没有自动生成该路径,请手动设置路径),如下图

  5. 设置 Enable Bitcode 为 NO,点击 Build Settings -> 展开 Build Options -> Enable Bitcode 设置为 NO,如下图

  6. 设置 Other Linker Flags 的参数 -ObjC ,点击 Build Settings -> 展开 Linking -> Other Linker Flags 增加参数 -ObjC,如下图

  7. 设置预处理宏定义,点击 Build Settings -> 展开 Apple LLVM - Preprocessing -> 在 Preprocesser Macros 右侧输入 ZPLATFORM=ZPLATFORM_IOS,如下图

  8. 设置 Documentation Comments 为 NO,点击 Build Settings -> 展开 Apple LLVM - Warnings - All languages -> Documentation Comments 设置为 NO,如下图

  9. 设置后台运行模式,点击 Capabilities -> Background Modes 设为 ON -> 勾选 Audio, AirPlay, and Picture in Picture,如下图

  10. 设置麦克风和摄像头的权限,点击 Info -> 添加麦克风和摄像头的权限,如下图

SDK 初始化

  1. 导入 JCApi.framework 的头文件

     #import <JCApi/JCApi.h>
    
  2. 可在 App 启动的方法中调用 JCApiManager 的初始化接口 initializeWithAppkey,如下

     - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
         // SDK初始化,MY_APP_KEY为用户申请到的appkey
         int ret = [JCApiManager initializeWithAppkey:MY_APP_KEY];
         if (ret == JCOK) {
             NSLog(@"初始化成功");
         }
    
         return YES;
     }
    
  3. 编译工程(可按 Command + B),工程编译成功并且初始化接口返回 JCOK ,则表示 SDK 导入和初始化成功。

如果编译失败,请对照工程设置步骤和 SDK 导入和初始化常见问题。

SDK 导入和初始化常见问题

  1. Library Search Paths lib 库文件的路径设置错误,参考工程设置第4步是否设置正确,错误如下图

  2. Header Search Paths 头文件的路径设置错误,参考工程设置第4步是否设置正确,错误如下图

  3. Framework Search Paths 路径设置错误,参考工程设置第4步是否设置正确,错误如下图