Recently, I've noticed that background Bluetooth scanning stops when I move an app to the background on an iPhone 17 device with Bluetooth 6. I'm curious about a solution. Background Bluetooth scanning doesn't stop on devices older than iOS 26, or on devices that were updated from an iPhone 17 or earlier to iOS 26.
iPhone17 bluetooth background scanning issue
This is likely due to the state of the specific device you are observing the issue rather than an iPhone 17 or iOS 26 issue.
When apps are in the background, the scanning slows down in stages, and the advertising interval of the peripheral is critical to being able to discover and connect.
Please do check what the advertising interval is. We recommend 20 ms, 152.5 ms, 211.25 ms, 318.75 ms, 417.5 ms, 546.25 ms, 760 ms, 852.5 ms, 1022.5 ms, 1285 ms intervals. Even with these specific intervals, using the slower ones, discovery can take up to several minutes.
So, I would believe the issue is not scanning is being stopped, but slowing down so you might be thinking it has stopped.
You can test this by changing the advertising interval of the peripheral to 20 ms, and then it should be discovered in seconds even if your app is in the background.
Argun Tekant / WWDR Engineering / Core Technologies
We've carefully reviewed the part you mentioned. However, our issue currently only occurs on the iPhone 17. The app sits in the background, scanning and connecting to nearby BLE devices. Currently, on the iPhone 17, the BLE scanning stops immediately as soon as the app is outside, and it barely scans a single BLE device until it starts again. We'd like to ask for a solution to this issue. Device up to the iPhone 16 In CBCentralManager scanForPeripherals( withServices: [my_uuid], options: [CBCentralManagerScanOptionAllowDuplicatesKey: true] ) When you make a call, you can continue to receive surrounding scanning, either quickly or slowly, even if the app goes into the background, but on the iPhone 17, scanning stops immediately.
Hello, I'm experiencing the same issue with the iPhone 17 series only. Another thing: when another app is using CoreBluetooth in foreground, my app continues to receive advertisements in background. Regards.
This is something we will need some diagnostics to investigate. Anyone who is seeing this issue, please file bug reports as below:
Please file a Bug Report on this
In your bug report we would need some diagnostics logs as well. Please go to https://developer.apple.com/bug-reporting/profiles-and-logs/ and follow the instructions for Bluetooth for iOS to install a logging profile on your device.
Then reproduce the issue, and follow the instructions at the above link to create a sysdiagnose.
And attach that to the bug report as well.
If you have separate sniffer logs that shows the interaction, also do include those.
We would also like to know the peripheral devices you are seeing this issue with. Make/Model and if you know, the BT chipset details (HW/FW versions and manufacturer) would be helpful to track this down.
Once done, please share the Feedback ID here, and @mention me in your response so we can take a look at this right away.
Argun Tekant / WWDR Engineering / Core Technologies
@Engineer I submitted a bug report. FB20381425
optional func centralManager( _ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber )
On iPhone 17, this method does not work when the app enters the background.
@benjaminseo The sysdiagnose you have attached to your Feedback seems to be from a Mac. Can you please also attach the sysdiagnose from the iOS side after you reproduce it again.
@Engineer I've also attached an iOS system diagnostic to the additional information sent. If it doesn't work, I'll create another bug report and submit it.
@Engineer I changed my Apple ID on my iPhone 17 and sent sysdiagnose again.