有没有办法可以在 Swift 中使用 Core Bluetooth 更改另一部 iPhone 上的视图控制器?

Posted

技术标签:

【中文标题】有没有办法可以在 Swift 中使用 Core Bluetooth 更改另一部 iPhone 上的视图控制器?【英文标题】:Is there a way where I can change the view controller on another iPhone using Core Bluetooth in Swift? 【发布时间】:2020-01-25 00:03:23 【问题描述】:

我正在尝试创建一个应用程序,我可以在其中使用 Core Bluetooth 在使用 Core Bluetooth 连接的不同设备上从一个 View Controller 更改为另一个 View Controller。例如,我在一部 iPhone 上按下一个按钮,它会在另一部连接的 iPhone 上将“HomeViewController1”更改为“HomeViewController2”。任何人都知道如何去做? 谢谢你。

【问题讨论】:

【参考方案1】:

一旦您设置好CoreBluetooth 堆栈并开始工作,这对 Core Bluetooth 来说是一件非常简单的事情。

您可以将一部 iPhone 设置为 CBPeripheral,另一部 iPhone 设置为 CBCentral,然后扫描并发现 CBPeripheral,然后连接到它。在 2 部 iPhone 之间建立连接后,只需监控和更改 CBPeripheral 中的变量即可。当它发生变化时,您会更新您的视图。

【讨论】:

我知道这是不久前的事了,但我尝试过这样的事情。如果我连接到设备,我只需更改 CBPeripheral 中的变量,并且我有一个协议来监视该变量的变化。有时它会工作,有时它不会,尽管没有什么可以干扰蓝牙连接。你会碰巧知道可能是什么原因吗? 不抱歉。只需使用大量print 语句来检查您的设备是否已实际连接并发现外围设备和特征。更改值时请务必使用setNotifyValue:forCharacteristic:,以便触发通知。

以上是关于有没有办法可以在 Swift 中使用 Core Bluetooth 更改另一部 iPhone 上的视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Swift 和 XCode 在 Core Data 中存储整数

在 Swift Core Data 中对存储的数据模型提取进行排序

可以在 Swift Playground 中使用 Core Data 吗?

如何在 Swift 中从 Core Data 中删除数据时删除 UITableView 行?

有没有办法在Swift中以编程方式设置NSCollectionView?

有没有办法在 Swift 中使用#selector 调用带参数的函数