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”

Json 解析错误:在 Swift iOS 中使用未声明的类型“Foundation”

使用未声明的类型“KIFTestActor”

升级到 Swift 3 时使用未声明的类型

Xcode 错误:SDK“iOS 10.0”中的产品类型“应用程序”需要代码签名