There is a bug with how iPadOS is detected in heap. I just verified this using my iPad Air using Safari on iPadOS 16.
When i look at live event stream for my device, it says:
Platform: Mac OS X 10.15.7
Operating System: Mac OS X
Device Type: Desktop
This is incorrect. This should be listed as iPadOS which is a unique OS for ipads (different than iOS and clearly Mac OS X) as well as saying the device type is a Tablet.
User Agent for an iPad as example is this on Chrome:
Mozilla/5.0 (iPad; CPU OS 15_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/105.0.5195.147 Mobile/15E148 Safari/604.1
So the clues here are the substrings “iPad” and the fact is says “like Mac OS X”. My guess is Heap is just looking for “Mac OS X”? Not sure.. but would want this fixed because right now we cannot differentiate desktops/MacOS and ipads. So on chrome, you should be able to differentiate very clearly it’s iPadOS and that it's a tablet.
On safari,
the user agent is this:
Mozilla/5.0(Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko)Version/15.6.1 Safari/605.1.15
on safari dekstop on Mac OS X, the user agent is this:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Safari/605.1.15
So it’s indistinguishable :(. Is there a way to fix this?
Best answer by TedO
View original