我正在编写一个iOS应用程序来与BLE设备通信.设备可以在连接之间更改名称(不是在BLE连接期间),但iOS拒绝更改设备名称.
例如:我可以在名称为SadName时连接到设备.我断开它,关闭应用程序等,并将设备的名称更改为HappyName.但是,当我扫描设备时,iOS仍然将外围设备名称显示为SadName.
如果我调试应用程序并查看:
(void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI
Run Code Online (Sandbox Code Playgroud)
peripheral.name的值是SadName所以我不认为这是我在代码中错误解释的东西.我应该提一下,当我扫描设备时,我的代码是:
[self.CM scanForPeripheralsWithServices:nil options:0]; // Start scanning
Run Code Online (Sandbox Code Playgroud)
我猜这只是因为设备UUID是相同的,所以iOS从它的缓存设备列表中提取它,但我想覆盖它.
思考?对不起,我是iOS新手.干杯 - MSchmidtbauer