gpt4 book ai didi

ios - 类型 'WatchManager' 不符合协议(protocol) 'WCSessionDelegate'

转载 作者:行者123 更新时间:2023-11-30 11:45:12 25 4
gpt4 key购买 nike

我尝试在现有项目中使用 WatchManager.swift。

import Foundation
import WatchConnectivity

class WatchManager: NSObject, WCSessionDelegate {


func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {

}

func sessionDidBecomeInactive(_ session: WCSession) {

}

func sessionDidDeactivate(_ session: WCSession) {

}
}

但是我在构建项目时遇到了麻烦

Swift Compiler Error Group - Type 'WatchManager' does not conform to protocol 'WCSessionDelegate'

还在问题导航器中我看到错误

Candidate has non-matching type '(WCSession, WCSessionActivationState, Error?) -> ()'

我已经尝试过:

  • 删除派生数据
  • 干净的项目
  • 清理构建文件夹
  • 从 git 重新加载项目
  • 从另一个项目复制文件
  • 创建新文件并重命名
  • 在另一台 Mac 上构建项目

但我每次都会收到这个错误

但是!如果我将创建新项目并添加 watchOS 目标并使用此代码创建新文件 - 项目将成功构建。

为什么?我如何尝试在我的现有项目中添加 WCSessionDelegate?

我使用的是Xcode9.2、swift4.0

最佳答案

噢...感谢@Sameer answer

WCSessionDelegate 有所需的方法

public func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?)

但是我的项目有一个名为 Error

的自定义类

这就是编译器产生不符合协议(protocol)的错误的原因

关于ios - 类型 'WatchManager' 不符合协议(protocol) 'WCSessionDelegate',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48911925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com