Closed Ivan-N-Kravchenko closed 1 day ago
I suspect this one to be a Samsung DEX example. Normally a phone but when you connect it to a PC screen it switches to Desktop EXperience which is reported as a tablet.
Thanks for the comment. Indeed such cases seem to be about Samsung devices, I can provide more examples if needed. All in all, does the current behavior appear to be correct? Different deviceclass values for the same device still seem to be confusing.
Yes, I consider these to be correct. The device is essentially asking for content suitable for phone/tablet class screens. See also https://yauaa.basjes.nl/expect/limitations/#unexpected-differences
And please provide examples you have. If you know for certain what real device it is, then I would like to know that too.
As requested, here are some examples (again, all in know about a real device comes from a user-agent string):
'Mozilla/5.0 (Linux; Android 14; SM-F936U Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/127.0.6533.61 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/474.0.0.52.74;]': 'Phone' 'Mozilla/5.0 (Linux; Android 14; SM-F936U Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/127.0.6533.81 Safari/537.36 [FB_IAB/FB4A;FBAV/475.0.0.40.82;]': 'Tablet'
'Mozilla/5.0 (Linux; Android 14; SM-F946U1 Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.186 Mobile Safari/537.36': 'Phone' 'Mozilla/5.0 (Linux; Android 14; SM-F946U1 Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.186 Safari/537.36 newsbreak/24.30.1': 'Tablet'
'Mozilla/5.0 (Linux; Android 14; SM-F926U Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.186 Mobile Safari/537.36': 'Phone' 'Mozilla/5.0 (Linux; Android 14; SM-F926U Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/127.0.6533.64 Safari/537.36': 'Tablet'
'Mozilla/5.0 (Linux; Android 14; SM-F956U1 Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/127.0.6533.81 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/475.0.0.40.82;]': 'Phone' 'Mozilla/5.0 (Linux; Android 14; SM-F956U1 Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/127.0.6533.81 Safari/537.36 [FB_IAB/FB4A;FBAV/475.0.0.40.82;]': 'Tablet'
'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/25.0 Chrome/121.0.0.0 Mobile Safari/537.36': 'Phone' 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/25.0 Chrome/121.0.0.0 Safari/537.36': 'Tablet'
Still it apparently isn't Samsung-specific:
'Mozilla/5.0 (Linux; Android 13; Ox-10-13-1 Build/T00624; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.188 Mobile Safari/537.36': 'Phone' 'Mozilla/5.0 (Linux; Android 13; Ox-10-13-1 Build/T00624; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.186 Safari/537.36': 'Tablet'
'Mozilla/5.0 (Linux; Android 13; 2201117PI Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.134 Mobile Safari/537.36': 'Phone' 'Mozilla/5.0 (Linux; Android 13; 2201117PI Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.188 Safari/537.36': 'Tablet'
The Ox-10-13-1
is fun: a 10.1 inch tablet with Dual SIM card ...
I have added all of these as testscases anda added detection of the last 4 examples the brand of the device.
There are different deviceclass values for very similar user agent strings (apparently from the same user / device):
The exact useragent useragent1: 'Mozilla/5.0 (Linux; Android 14; SM-F946N Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.135 Mobile Safari/537.36 PS_AOS' useragent2: 'Mozilla/5.0 (Linux; Android 14; SM-F946N Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.135 Safari/537.36 PS_AOS'
Expected/Incorrect fields deviceclass1: 'Phone' deviceclass2: 'Tablet'
Expected behavior I see the difference (Mobile Safari vs. Safari), still not sure how the deviceclass can differ given it's the same Samsung SM-F946N.