低功耗蓝牙心率游戏
展示如何与蓝牙低能耗心率设备/服务交互的游戏。
蓝牙低能耗心率游戏展示了如何使用Qt蓝牙API开发蓝牙低能耗应用程序。该应用程序涵盖了扫描蓝牙低能耗设备、连接到设备上的心率服务、写入特性和描述符,以及一旦心率发生变化,从设备接收更新。
该示例介绍了以下Qt类
此应用程序要正常工作,需要配有一颗心率服务的蓝牙低能耗设备。一种替代方案可能是可编程的蓝牙低能耗设备,可能模拟此服务。您还可以为该目的使用心率服务器示例。如果没有此类设备,则可用演示模式,该模式会创建并显示随机值。此演示模式通过在命令行中传递--simulator
来启用。
游戏的目标是尽可能地提高测量的心率。
有关此示例中使用的API的详细说明,请参阅使用Qt蓝牙低能耗API section of the Qt蓝牙模块文档。
如果无法获得心率设备,蓝牙低能耗扫描器示例可能更合适。扫描器示例与任何类型的蓝牙低能耗外围设备一起工作。
运行示例
要从Qt Creator运行此示例,请打开欢迎模式并从示例中选择示例。有关更多信息,请访问构建和运行示例。
检查蓝牙权限
在应用程序可以使用蓝牙之前,我们必须检查是否已经赋予了适当的权限
QBluetoothPermission permission{}; permission.setCommunicationModes(QBluetoothPermission::Access); switch (qApp->checkPermission(permission)) { case Qt::PermissionStatus::Undetermined: qApp->requestPermission(permission, this, &DeviceFinder::startSearch); return; case Qt::PermissionStatus::Denied: setError(tr("Bluetooth permissions not granted!")); setIcon(IconError); return; case Qt::PermissionStatus::Granted: break; // proceed to search }
视觉导游
该应用程序在附近搜索所有蓝牙低能耗外围设备。假设远程设备正在广播其存在。找到的设备将显示在列表中。请注意,即使它们不提供心率服务,所有找到的蓝牙低能耗设备也将列出。
在用户选择目标设备后,如果可用,示例将连接到其心率服务。它会自动启用心率值的更新通知,并在屏幕上显示当前值。
一旦监控过程完成,将显示收到值的简要总结。
© 2024 Qt公司有限公司。本文件中包含的文档贡献版权属于各自的拥有者。提供的文档受到Free Software Foundation发布的GNU自由文档许可版本1.3条款的许可。Qt及其相关标志是Qt公司在芬兰和/或世界其他国家的商标。所有其他商标均为各自所有者的财产。