没有这样的模块 'AgoraRtcKit' Xcode Swift 错误

No such module 'AgoraRtcKit' Xcode Swift error

我正在尝试通过名为 Agora 的第 3 方将实时视频流集成到我的应用程序中。我遇到了一些错误 No such module 'AgoraRtcKit'。我已经从他们的网站导入了库 SDK(还附上了相同的屏幕截图)。

代码:

 //
//  RoleViewController.swift
//  OpenLive
//
//  Created by CavanSu on 2019/8/28.
//  Copyright © 2019 Agora. All rights reserved.
//

import UIKit
import AgoraRtcKit. // This is the module which is not getting imported 

protocol RoleVCDelegate: NSObjectProtocol {
    func roleVC(_ vc: RoleViewController, didSelect role: AgoraClientRole)
}

class RoleViewController: UIViewController {

    weak var delegate: RoleVCDelegate?
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
    }
    
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        guard let segueId = segue.identifier,
            segueId.count > 0 else {
            return
        }
        
        switch segueId {
        case "roleToLive":
            guard let mainVC = navigationController?.viewControllers.first as? MainViewController,
                let liveVC = segue.destination as? LiveRoomViewController else {
                return
            }
            
            liveVC.dataSource = mainVC
        default:
            break
        }
    }
    
    func selectedRoleToLive(role: AgoraClientRole) {
        delegate?.roleVC(self, didSelect: role)
        performSegue(withIdentifier: "roleToLive", sender: nil)
    }
    
    @IBAction func doBroadcasterTap(_ sender: UITapGestureRecognizer) {
        selectedRoleToLive(role: .broadcaster)
    }
    
    @IBAction func doAudienceTap(_ sender: UITapGestureRecognizer) {
        selectedRoleToLive(role: .audience)
    }
}


参考图片:

这是 OP 试图获取的示例项目 运行ning: Basic-Video-Broadcasting/OpenLive-iOS

要构建它并 运行,请从 here 下载项目和视频 SDK。打开项目并从 Frameworks, Libraries, and Embedded Content 列表中删除 AgoraRtcKit.framework。接下来将下载的 SDK 中的 libs 文件夹拖到项目目录中。导航至 libs 文件夹并将 AgoraRtcKit.framework 拖回 Frameworks, Libraries, and Embedded Content.

我换了一个不同版本的 Agora sdk 就解决了。

在我的 pod 文件中,我有:

pod 'AgoraRtcEngine_iOS'

然后我改成了:

pod 'AgoraRtcEngine_iOS', '~> 3.2.0'

进行此更改(并安装新的 pods)后,我的 ViewController 中的 import AgoraRtcKit 就可以正常工作了。

我从这个项目中得到了提示https://github.com/AgoraIO-Community/Agora-iOS-Swift-Example/blob/main/Podfile

如果您正在使用 AgoraRtcKit SDK 在模拟器中调试或 运行 项目,它 returns 错误如 - No such module 'AgoraRtcKit' Xcode swift 错误。 所以如果你想消除这个错误,那么你需要使用一个真实的设备。

我知道这个答案已经解决了,但我找到了一个在我的计算机上 100% 有效的解决方案。我有一个 Mac,我所有的 Xcode 项目都存储在 iCloud 中。当出现此错误 No such module AgoraRtcKit 时,我转到我的项目文件夹(在我的 iCloud 中),导航到 pods 文件夹,然后右键单击“AgoraRtcEngine_iOS”文件夹并单击下载。这将强制 iCloud 从云端下载 pod,并将其与您在 Xcode 中打开的项目合并。下载完成后(大约需要 10 - 15 秒,具体取决于您的计算机)您可以简单地 运行 项目。