快速开始
这份文档将指导您集成 IMKit 并快速开始聊天。
前提条件
- 前往ZEGO管理控制台并执行以下操作:
- 创建一个项目,并获取您的项目的
AppID
和AppSign
。 - 激活即时通讯服务。
- 创建一个项目,并获取您的项目的
- 准备环境:
- Xcode 13.0或更高版本
- 运行在iOS 12.0或更高版本的iOS设备
- 设备已连接到互联网。
集成 SDK
注意
CocoaPods 版本要求是 1.10.0 或更高。
1
使用CocoaPods将 ZIMKit 添加为您项目的依赖项
打开 Podfile
文件并添加 pod 'ZIMKit'
Podfile
target 'MyProject' do
use_frameworks!
pod 'ZIMKit'
end
1
执行命令 pod repo update
来更新本地索引,确保您可以安装最新版本的 SDK。
Untitled
pod repo update
1
执行 pod install
命令来安装 SDK。
Untitled
pod install
1
2
设置相关权限
打开 Info.plist
文件并添加以下内容:
Untitled
<key>NSMicrophoneUsageDescription</key>
<string>We require microphone access to use zimkit.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>We require photo access to use zimkit.</string>
1
3
调用 init 方法来初始化 IMKit
AppDelegate.swift
import UIKit
import ZIMKit
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let appID: UInt32 = <#your appID#> // The AppID you get from ZEGOCLOUD Admin Console.
let appSign: String = <#your appSign#> // The AppSign you get from ZEGOCLOUD Admin Console.
ZIMKit.initWith(appID: appID, appSign: appSign)
}
}
1
4
在登录页面上调用 connectUser 方法以登录到 IMKit
警告
您可以自定义规则来生成用户ID和用户名。我们建议您设置一个有意义的用户ID。您可以将用户ID与您的业务账户系统关联起来。
viewController.swift
import UIKit
import ZIMKit
/// your viewController.swift
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let connectUserButton = UIButton(type: .custom)
connectUserButton.setTitle("Connect User And Show", for: .normal)
connectUserButton.frame = .init(x: 100, y: 100, width: 250, height: 50)
connectUserButton.addTarget(self, action: #selector(connectUserAction), for: .touchUpInside)
connectUserButton.backgroundColor = .orange
view.addSubview(connectUserButton)
}
@objc func connectUserAction(_ sender: Any) {
// Your ID as a user.
let userID: String = "<#your userID#>"
// Your name as a user.
let userName: String = "<#your userName#>"
// The image you set as the user avatar must be network image. e.g., https://storage.zego.im/IMKit/avatar/avatar-0.png
let userAvatarUrl: String = "<#your userAvatarUrl#>"
ZIMKit.connectUser(userID: userID, userName: userName, avatarUrl: userAvatarUrl) { error in
// Display the UI views after connecting the user successfully.
if error.code == .success {
self?.showConversationListVC()
}
}
}
}
1
5
显示 IMKit 的会话组件
viewController.swift
/// your viewController.swift
func showConversationListVC() {
let conversationVC = ZIMKitConversationListVC()
let nav = UINavigationController(rootViewController: conversationVC)
nav.modalPresentationStyle = .fullScreen
self.present(nav, animated: true)
}
1
理想情况下,到这个时候,你的应用程序应该是这个样子的:
开始聊天
IMKit 支持以下功能:
相关指南
组件概述
点击这里了解更多UI组件。
运行示例代码
一个快速指南,帮助您运行示例代码。