I have a mobile app (android & iOS) that scans for peripherals with a filter by service UUID. I noticed a degradation in discoverability when multiple centrals scan at the same time. I assume this is because mobile phones always do active scans while in foreground.
The active scan requests a scan response, and while sending this response the device is busy. With 3 or 4 devices scanning, there's a noticeable drop in discoverability. Since active scanning apparently cannot be disabled when using the iOS and Android APIs, I'm looking for other ways to avoid them.
At first I thought scan filters might help, but since device name and UUID are in the scan response they very likely also require a scan response. So my question is, are all of the filters applied after the scan response was requested, or are some (e.g. Mac address filter on android) applied earlier, so I could avoid requesting a scan response?
If so, I could tailor my app to use these scans.