Re: WebPlatform Browser Support Info

This definitely was supposed to go the list.

I’ll give a concrete example:

Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3

Which browser is this supposed to be? Before you answer “an iPhone running Mobile Safari on iOS 5” let me just say that is not.
If fact, you cannot determine the actual browser from this User-Agent header, nor from the any other headers nor anything else.

It is the default browser of Ubuntu Touch.

And there are many more of these examples. UA strings are useless as a unique identifier.


I have a couple of dozen million test results collected for HTML5test.com. And using those results I build my own library (whichbrowser.net) for identifying the browser.
I look at the following and check the consistency between these three: 

1) The UA header send to the server
2) The navigator.userAgent string in the browser itself - which can differ from 1)
3) A dozen other headers send to the server

Then I use feature detection and compare that to what I determined from 1) to 3). 
For example, if I feature detect the V8 javascript engine and the UA string says I use Gecko, then something is wrong. 
That gives me an indication if the detection from 1) to 3) is reliable. I simply ignore results from unreliable detections.

And even then we have browsers like the above that can not be detected properly. My own library detects this example as:

“An unknown browser that imitates Safari on an Apple iPhone running iOS 5.0"


Cheers,

Niels
html5test.com



On 23 Oct 2013, at 23:14, Ronald Mansveld <ronald@ronaldmansveld.nl> wrote:

> Niels,
> 
> I noticed you sent this reply only to me. Could you elaborate and give examples of different browsers that use the same UA-string? And how do tests currently identify those browsers?
> 
> 
> Ronald
> 
> 
> 
> Niels Leenheer schreef op 2013-10-19 07:20:
>> On Oct 18, 2013, at 6:40 PM, Ronald Mansveld <ronald@ronaldmansveld.nl> wrote:
>>> Maximiliano Firtman schreef op 2013-10-18 16:09:
>>> I've checked WURFL, but their licensing seems to be completely incompatible. As in: we're not allowed to use it, unless we get a license for one of their tools to access the data.
>>> But wouldn't UA-strings suffice for mobile as well? Cause I've got a hunch that that's exactly what they base their data on.
>> A UA string is not a proper way to identify a browser. And that is
>> only more true on mobile.
>> The problem is that:
>> - Different browsers use the same UA string.
>> - One browser can use multiple UA strings.
>> Unfortunately these are not exceptions. That makes a UA string a
>> pretty lousy unique identifier.
>> Cheers,
>> Niels
>> html5test.com

Received on Wednesday, 23 October 2013 22:36:07 UTC