快速开始
大约 3 分钟
iOS 集成文档
快速开始
利用单群聊 UIKit,你可以轻松实现单群和群聊。本文介绍如何快速实现在单聊会话中发送第一条消息。
前提条件
开始前,确保你的开发环境满足如下条件:
- Xcode:推荐最新版本。
- 安装 iOS 13.0 或以上版本的 iOS 模拟器或 Apple 设备。
- CocoaPods 已经安装并且已跑通了集成。
- 已在声网控制台创建了有效的即时通讯 IM 开发者账号,并获取了 App ID。
- 如果你的网络环境部署了防火墙,请联系声网技术支持设置白名单。
实现发送第一条单聊消息
第一步 创建项目
在 Xcode 中创建一个 iOS 平台下的 App。在 Choose options for your new project 对话框中进行以下设置:
- Product Name:填入 ShengwangChatUIKitQuickStart。
- Organization Identifier:设置为你的标识符。
- User Interface:选择 Storyboard。
- Language:选择你常用的开发语言。
第二步 初始化
你可以在应用加载时或使用 ShengwangChatUIKit 之前对其进行初始化。
初始化时,需传入 App ID。你可以在声网控制台展开控制台左上角下拉框,选择需要开通即时通讯 IM 服务的项目,然后点击 总览,在项目信息区域查看 App ID。
import ShengwangChatUIKit
    
@UIApplicationMain
class AppDelegate:UIResponder,UIApplicationDelegate {
     var window:UIWindow?
     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
         let error = ChatUIKitClient.shared.setup(appId: "Appid")
     }
}
第三步 登录
使用用户 ID 和用户 token 登录 ShengwangChatUIKit。
提示
若你已集成了 IM SDK,SDK 的所有用户 ID 均可用于登录 ShengwangChatUIKit。
在声网控制台按照如下步骤创建用户:
- 展开控制台左上角下拉框,选择需要开通即时通讯 IM 服务的项目。 
- 点击左侧导航栏的全部产品。 
- 在下拉列表中找到即时通讯 IM 并点击。 
- 在即时通讯 IM 页面,进入运营管理标签页。 
- 在用户 页签下,点击创建IM用户。 
- 在弹出的对话框中,配置用户相关参数,点击确定。 
在用户列表中,在新创建的用户的操作一栏中,点击更多,选择查看Token,查看该用户的 token。在开发环境中,你需要从你的 App Server 获取用户 token,详见使用 Token 鉴权。
public final class YourAppUser: NSObject, ChatUserProfileProtocol {
            public func toJsonObject() -> Dictionary<String, Any>? {
        ["ease_chat_uikit_user_info":["nickname":self.nickname,"avatarURL":self.avatarURL,"userId":self.id]]
    }
    
    
    public var id: String = ""
        
    public var nickname: String = ""
        
    public var selected: Bool = false
    
    public override func setValue(_ value: Any?, forUndefinedKey key: String) {
        
    }
    public var avatarURL: String = "https://accktvpic.oss-cn-beijing.aliyuncs.com/pic/sample_avatar/sample_avatar_1.png"
}
// 使用当前用户对象符合 `ChatUserProfileProtocol` 协议的用户信息登录 ShengwangChatUIKit。
 ChatUIKitClient.shared.login(user: YourAppUser(), token: ExampleRequiredConfig.chatToken) { error in 
 }
第四步 创建聊天页面
调用 init 方法将在控制台上创建的用户的用户 ID 传入 conversationId 参数,向该用户发送消息。
let vc = ComponentsRegister.shared.MessageViewController.init(conversationId: <#创建用户的id#>, chatType: .chat)
//push 或者 present 均可
 ControllerStack.toDestination(vc: vc)
第五步 发送第一条消息
在聊天页面下方输入消息,然后点击发送按钮发送消息。
发送第一条消息
