iOS 10.0:使用未声明的类型“CBCharacteristic”
Posted
技术标签:
【中文标题】iOS 10.0:使用未声明的类型“CBCharacteristic”【英文标题】:iOS 10.0 : Use of undeclared type 'CBCharacteristic' 【发布时间】:2016-12-12 07:49:04 【问题描述】:我正在开发我的应用程序中的 BLE 功能。我在我的项目中添加了 CoreBluetooth 框架。
我已经添加了,
import CoreBluetooth
在开始到 swift 文件中。
现在,当我尝试实现下面的委托方法时,
func peripheral(peripheral: CBPeripheral, didUpdateValueForCharacteristic characteristic: CBCharacteristic, error: NSError?)
CBCharacteristic 是未声明的类型。
【问题讨论】:
您是否已将import CoreBluetooth
添加到您的 swift 文件中?
是的,我已经在我的 swift 文件中添加了它,并且还检查了框架中的委托方法,它在那里可用。我已在构建设置中将 use legacy swift version 设置为 true,因为我现有的代码在 swift 2.3 中
您能否编辑您的问题以显示更多代码,包括您导入 CoreBluetooth 的位置。您的行看起来正确
我已经通过构建阶段添加了框架,并将其导入到我的 swift 文件中。当我执行 Cmd + 单击该委托时,它也会切换到该框架,但是当我尝试构建它时它不起作用。
可能对以后有用的快速问题:您使用的是哪个版本的 Swift?因为既然有 error: NSError?
部分,似乎在 2.2 之前(错误管理自此更改)。
【参考方案1】:
class ViewController: UIViewController, CBCentralManagerDelegate,
CBPeripheralDelegate
实现外围代理 之后就可以工作了。
【讨论】:
以上是关于iOS 10.0:使用未声明的类型“CBCharacteristic”的主要内容,如果未能解决你的问题,请参考以下文章
带有 iOS 的 Kotlin Multiplatform:“使用未声明的类型 'KotlinCoroutineContext'”
Swift 上的 Firebase IOS:使用未声明的类型“DatabaseReference”