ios BLE读取蓝牙地址

参考资料:
下载代码

主要思路:

1,连接BLE
2,读取1803服务下面特征值2A23的数据

//扫描到services
- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(nullable NSError *)error{
    if(error){
        NSLog(@"didDiscoverServices error");
        return;
    }
    for (CBService *service in peripheral.services) {
        //扫描每个service的characteristics
        [peripheral discoverCharacteristics:nil forService:service];
    }
} 
- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(nullable 
{
   ...
       for (CBCharacteristic *characteristic in service.characteristics) {
        if([characteristic.UUID.UUIDString isEqualToString:@"2A23"]){
            if (characteristic.properties & CBCharacteristicPropertyRead) {
                NSLog(@"start read....");
                [peripheral readValueForCharacteristic:characteristic];
            }else{
                NSLog(@"2A23不支持read");
            }
        }
    }
   ...
}

- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(nullable NSError *)error{
    
    NSData *data = characteristic.value;
    NSString *resultStr = [self hexStringFromNSdata:data];
    
    
    if([characteristic.UUID isEqual:[CBUUID UUIDWithString:@"2A23"]]){
      
        const Byte *bytes = [data bytes];
        NSMutableString *str = [[NSMutableString alloc]
                                 initWithFormat:@"%02X:%02X:%02X:%02X:%02X:%02X",
                                 bytes[7],bytes[6],bytes[5],
                                 bytes[2],bytes[1],bytes[0]
                                 ];
        NSLog(@"macString===>%@",str);
    }
    ....
 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Delphi蓝牙BLE控件是一种可以在Delphi编程语言下使用的蓝牙低功耗控件。BLE是一种低功耗蓝牙通信的协议,它可以使小型便携设备像智能手表、健康监测设备、智能家居控制器等进行低功耗的通信。 Delphi蓝牙BLE控件的使用使得开发者们可以轻松地创建适用于各种蓝牙BLE设备的应用程序。控件可以帮助开发者们对设备进行连接、读取数据以及写入数据等操作,并且还包含了用于监测设备状态和数据的事件、属性和方法等。 除此之外,Delphi蓝牙BLE控件还具有易于使用、灵活性高、适用性强等优势,可以在Windows、Mac、iOS以及Android等平台上运行。这使得它非常适合需要跨平台开发的开发者们使用。 因此,Delphi蓝牙BLE控件是一种非常有用的工具,它可以帮助开发者们更加有效地创建和部署蓝牙BLE应用程序,也可以帮助他们更容易地实现蓝牙BLE设备的通信和操作。 ### 回答2: Delphi是一款集成开发环境(IDE),可用于创建各种桌面和移动应用程序。而蓝牙BLE(低功耗蓝牙)是一种专为低功耗应用而设计的无线技术,适用于多种场景,如智能家居、健身设备、智能手表等。 在Delphi中,可以使用蓝牙BLE控件进行蓝牙BLE设备的连接和通信。此控件支持连接多种BLE设备,如传感器、心率监测器、智能手环等,并可在应用程序中传输所需的数据。 使用Delphi中的蓝牙BLE控件,可以轻松实现对BLE设备的可视化控制和数据交互,而不需要深入了解蓝牙BLE协议及其通信方式。此外,Delphi还提供了多种可视化组件和第三方库,可帮助开发人员更快地实现应用程序。 总的来说,Delphi蓝牙BLE控件提供了一种方便快捷的方式来实现蓝牙BLE设备的连接和通信,可大大简化开发流程,提高开发效率。 ### 回答3: Delphi 是一个流行的集成开发环境 (IDE),可以用来开发各种类型的应用程序。其中就包括了蓝牙 BLE (低功耗蓝牙) 控件,用于开发与 BLE 设备通信的应用程序。 在 Delphi 的控件库中,用户可以找到一个名叫 TBluetoothLE 的组件,用于实现与 BLE 设备的通信。该组件提供了多种功能,包括扫描 BLE 设备、连接 BLE 设备、发送和接收数据等。用户可以利用 Delphi 的简单易用的界面设计工具来创建与 BLE 设备交互的用户界面。 此外,Delphi 也支持基于事件的编程模型,可以方便地处理与 BLE 设备的交互事件。例如,当一个新设备被发现,TBluetoothLE 组件将会发出 OnDiscoverLeDevice 事件信号。当 BLE 设备传输数据时,TBluetoothLE 组件将会发出 OnCharacteristicRead 和 OnCharacteristicWrite 事件信号。这些事件可以被用户编写的代码所捕捉和处理。这样,用户可以轻松地实现需要的功能,让应用程序能够与 BLE 设备进行通信。 总之,Delphi 蓝牙 BLE 控件是一个非常有用的工具,可以帮助开发者轻松地实现与 BLE 设备的通信。无论是开发单个应用程序还是为客户定制定制化的 BLE 应用程序,都可以受益于 Delphi 的强大功能和易用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值