跳到主要内容

CallKit 2.X 升级到 5.X

本文只描述 CallKit SDK 的升级步骤。如果您的 App 工程中调用了 CallLib RCCallClient 下的方法,请在完成本文档升级步骤后继续前往 CallLib 升级文档。

升级概述

CallKit SDK 5.X 对比 2.X,适配了 iPhone 新机型与新系统,使用起来更加稳定,并在之前版本上修复了大量问题,建议尽早升级至新版 CallKit SDK。

前置条件

  • CallKit SDK 依赖 IMKit 请您确保已将 IMKit 升级至 5.X。
  • 已遵照 IMkit 升级要求将您的 Cocoapod 版本升级到 1.10.0 以上。

评估升级工作量

  • 如果您 App 未修改 CallKit 源码(例如采用 pod 依赖)直接按照以下方式修改依赖即可完成升级。
  • 如果您对 CallKit 代码做了少量修改,您可以依照集成后的报错提示,进行修改。
  • 如果您对 CallKit 代码做了大量修改,建议您查询您的修改记录,使用 5.X CallKit 重新实现个性化需求。

手动集成

  1. 将原先 SDK 依赖的系统库全部去掉,如果 App 或者其他 SDK 有依赖的系统库除外

    • AssetsLibrary
    • MapKit
    • ImageIO
    • Security
    • SystemConfiguration
    • QuartzCore
    • AVFoundation
    • GLKit
    • OpenGLES
    • CoreGraphics
    • CoreLocation
    • CoreTelephony
    • CoreFoundation
    • CoreMedia
    • CoreAudio
    • CoreVideo
    • CFNetwork
    • AudioToolbox
    • VideoToolBox
    • AVFoundation
    • libc++.tbd
    • libz.tbd
    • libbz2.tbd
    • libiconv.tbd
    • libsqlite3.tbd
  2. 将 2.X 的 RongCallLib.framework、RongRTCLib.framework、RongCallKit.framework、RongIMLib.framework、RongIMKit.framework、libopencore-amrnb.a (该库包含在 RongIMLib 软件包中) 删除并替换为 5.X 的 RongRTCLib.xcframework、RongIMLibCore.xcframework、RongCallLib.xcframework、RongIMLib.xcframework、RongIMKit.xcframework、RongCallKit.xcframework

  3. General -> Frameworks,Libraries,and Embedded Binaries 中将 RongXX.framework 的 Embed 设置为 Embed & Sign

pod 集成

  1. 在 podfile 中添加如下内容:

    pod 'RongCloudRTC/RongCallKit', '~> x.y.z'
  2. 请在终端中运行以下命令:

    pod install

    如果出现找不到相关版本的问题,可先执行 pod repo update ,再执行 pod install 。

接口替换说明

初始化接口

将原有 AppKey 初始化方法进行替换

[[RCIM sharedRCIM] initWithAppKey:@"请在开发者平台获取AppKey"];

连接接口

将原有连接 IM 方法进行替换

// 连接 IM 服务
[[RCIM sharedRCIM] connectWithToken:@"从您服务器端获取的 Token"
dbOpened:^(RCDBErrorCode code) {}
success:^(NSString *userId) {}
error:^(RCConnectErrorCode status) {}];