声网在 GitHub 上提供一个开源的语音通话示例项目 Agora-iOS-Voice-Tutorial-Swift-1to1。本文介绍如何快速跑通该示例项目,体验声网音频通话效果。你也可以直接观看我们的视频教程。
参考以下步骤创建一个声网项目:
声网会给每个项目自动分配一个 App ID 作为项目唯一标识。
在声网控制台的项目管理页面,找到你的项目,点击 App ID 右侧的 图标,即可获取项目的 App ID。
为提高项目的安全性,声网推荐使用 Token 对即将加入频道的用户进行鉴权。
为了方便测试,声网控制台提供生成 RTC 临时 Token 的功能。参考以下步骤获取 RTC 临时 Token:
testroom
,然后点击生成。后续调用 API 加入频道时,请确保填入的频道名与这里的频道名一致。克隆 Basic-Audio-Call 仓库至本地,找到 Agora-iOS-Voice-Tutorial-Swift-1to1
示例项目文件夹。
在 Agora-iOS-Voice-Tutorial/AppID.swift
文件中填写你从声网控制台获取到的 App ID 和临时 Token。
// 把 <#Your App Id#> 替换成你的 App ID,并加引号,如 "xxxxxx"
let AppID: String = <#Your App Id#>
// 把 #Temp Access Token# 替换成你的临时 Token,并加引号,如 "xxxxxx"
let Token: String? = <#Temp Access Token#>
打开 VoiceChatViewController.swift
文件,在 joinChannelByToken
的 channelId
参数中填写你生成临时 Token 时使用的频道名。
func joinChannel() {
// 把 demoChannel 修改为你生成临时 Token 时使用的频道名
agoraKit.joinChannel(byToken: Token, channelId: "demoChannel", info:nil, uid:0) {[unowned self] (sid, uid, elapsed) -> Void in
self.agoraKit.setEnableSpeakerphone(true)
UIApplication.shared.isIdleTimerDisabled = true
}
}
按照以下步骤将声网iOS SDK 集成到示例项目中。
libs
文件夹下的所有文件复制到 Agora-iOS-Voice-Tutorial
文件夹下。连接上 iOS 设备后,用 Xcode 打开示例项目,然后编译并运行项目。你会在 iOS 设备上看到如下画面。
现在你就可以开始体验语音通话了。你可以邀请一位朋友克隆 API-Examples-Web 项目到本地,在浏览器中打开 Demo/index.html
文件,并输入相同的 App ID、频道名和临时 Token,加入同一频道与 iOS 端互通。
下表列出示例项目的代码结构,你可以参考示例项目的代码,根据自己的需求进行调整。
文件/文件夹 | 描述 |
---|---|
VoiceChatViewController.swift | 主要功能及频道内页面样式的代码。 |
KeyCenter.swift | 配置 App ID 与 Token 的代码。 |