Bluetooth scan not returning local name kCBAdvDataLocalName with iOS 16.4.1

I have an app that utilizes BLE to scan and connect to our devices. I noticed that once we updated to iOS 16.4.1 that kCBAdvDataLocalName is no longer returned in the scan result.

Here is the result of a scan with an older version of iOS where kCBAdvDataLocalName is returned as part of the scan:

    advertising =     {
        kCBAdvDataIsConnectable = 1;
        kCBAdvDataLocalName = test1;
        kCBAdvDataServiceUUIDs =         (
            "832AE7FE-D3C5-11E4-B9D6-1681E6B88EC1"
        );
        kCBAdvDataTxPowerLevel = "-2";
    };
    id = "29C7EF76-9CAA-6B8B-A14A-AFA1045A69AF";
    name = "Hickory    ";
    rssi = "-85";
    state = disconnected;
}

When using a device that has been updated to 16.4.1 kCBAdvDataLocalName is no longer present:

    advertising =     {
        kCBAdvDataIsConnectable = 1;
        kCBAdvDataServiceUUIDs =         (
            "832AE7FE-D3C5-11E4-B9D6-1681E6B88EC1"
        );
        kCBAdvDataTxPowerLevel = "-2";
    };
    id = "DBC2205A-AB82-D6A5-6D71-4CB132615472";
    name = "Hickory    ";
    rssi = "-90";
    state = disconnected;
}

Anyway to get this functionality back? Workaround?

We use the local name in our scan list to differentiate the devices we can connect to.


Bluetooth scan not returning local name kCBAdvDataLocalName with iOS 16.4.1
 
 
Q