Detect Mobile scaled Resolution via window.devicePixelRatio #3416

anonymous-piwik-user opened this Issue Oct 3, 2012 · 6 comments

3 participants


Piwik currently has an issue with correctly detecting an iPhone 5 and shows a wrong display size in the logs:

iPhone / Safari / 320x568

The correct size would be 1136 x 640px.

Find the iPhone5 user agent string below:

Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A405 Safari/8536.25

The screen resolution is captured by Piwik.js. It doesn't look at the user agent, so it has no way of knowing that Mobile Safari is lying.


We could use window.devicePixelRatio to scale the resolution.

But I loathe using Apple's window.orientation or orientationchange event when other browsers are supporting the draft standard deviceorientation event.


By the way, the same goes for the iPad 3, which is recognized with 768x1024 while it is 2048 x 1536px actually.


(In [7319]) fixes #3416 - scale resolution by window.devicePixelRatio on Safari iOS/Mac OS X


(In [7329]) refs #3416, fixes #3496 - fix RegExp typo; thanks pebosi

Piwik Open Source Analytics member

FYI change reverted in #10296 (comment) as applying the device pixel ratio resulted in resolution incorrectly stored.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment