本文介绍在iOS端通过低代码集成(含UI)方式实现老师端推流和学生端观看(播流)的功能。

背景信息

老师端推流和观众端观看是互动课堂的基础场景。从集成的角度看,两个场景是独立于彼此的。用户可根据业务需要选择集成两个场景或其中一个场景。例如,只需要集成老师端推流的用户可以只集成老师端,避免接入不需要的模块而增加包大小。

前提条件

客户端集成前,请确保已经通过控制台创建应用并获取客户端集成需要的信息(应用ID,APP Key,低代码集成服务地址,低代码集成服务密钥)。创建指引请参见创建应用

环境要求

  • 设备类型:支持iPhone和iPad所有型号。
  • CPU架构:支持armv7、arm64、x86_64架构,不支持i386架构。
  • 系统版本:支持iOS 10.0及以上版本。
  • 其他:不支持bitcode,不支持屏幕旋转。

iPad老师端

注意 互动课堂iOS老师端仅支持使用iPad。
  1. 通过CocoaPods添加SDK依赖。

    将下列依赖库添加到已有的Podfile中。其中AliStandardClassroomBundle低代码集成(含UI)互动课堂的入口库,其他都是AliStandardClassroomBundle的依赖库。

    pod 'Masonry'
    pod 'MJRefresh'
    pod 'LEEAlert'
    
    pod 'AliStandardClassroomBundle', '1.8.0'
    pod 'AliInteractiveRoomBundle', '1.8.0'
    pod 'AliInteractiveRTCCore', '1.8.0'
    pod 'AliRTCSdk', '2.5.7'
    pod 'AliInteractiveWhiteBoardCore', '1.8.0'
    pod 'AliInteractiveDocumentCore', '1.8.0'
  2. 配置设备权限。
    上课需要获取设备本身的摄像头使用权限、麦克风的使用权限、WIFI网络的使用权限,即需要在Xcode工程本身的plist文件中主动配置以下三项:
    Key Value
    Privacy - Camera Usage Description Use camera
    Privacy - Microphone Usage Description Use microphone
    Application uses Wi-Fi YES

    配置后效果如下所示:

    iOS主播端权限开通示例图
  3. 接入代码。完整的代码实现逻辑请参见iOS端互动课堂老师端低代码集成源码

iPad和iPhone学生端

  1. 通过CocoaPods集成互动课堂低代码集成的SDK。

    把下面依赖库添加到已有的Podfile中即可。其中AliStandardClassroomBundle就是互动课堂低代码集成的入口库,其他的都是AliStandardClassroomBundle的依赖库。

    pod 'Masonry'
    pod 'MJRefresh'
    pod 'LEEAlert'
    
    pod 'AliStandardClassroomBundle', '1.8.0'
    pod 'AliInteractiveRoomBundle', '1.8.0'
    pod 'AliInteractiveRTCCore', '1.8.0'
    pod 'AliRTCSdk', '2.5.7'
    pod 'AliInteractiveWhiteBoardCore', '1.8.0'
    pod 'AliInteractiveDocumentCore', '1.8.0'
    pod 'AliInteractiveVideoPlayerCore', '1.8.0'
    pod 'AliPlayerSDK_iOS', '5.4.4.0'
  2. 配置设备权限。
    上课需要获取设备本身的摄像头使用权限、麦克风的使用权限、WIFI网络的使用权限,即需要在Xcode工程本身的plist文件中主动配置以下三项:
    Key Value
    Privacy - Camera Usage Description Use camera
    Privacy - Microphone Usage Description Use microphone
    Application uses Wi-Fi YES

    配置后效果如下所示:

    iOS主播端权限开通示例图
  3. 写代码。完整的代码实现逻辑请参见iOS互动课堂学生端低代码接入源码
    说明

    在这个开源代码中,AIRBDClassroomStudent4iPhoneViewController类是接入iPhone下学生端的代码示例,AIRBDClassroomStudent4iPadViewController类是接入iPad下学生端的代码示例。

后续步骤

低代码集成(含UI)场景下,完成老师端及学生端集成即可使用互动课堂产品。如果低代码形态的功能无法满足业务需求,您可以通过进阶开发再服务端实现更高级的功能。详情请参见互动课堂进阶开发
注意 互动课堂客户端暂不支持进阶开发。