Retina显示检查GTM

时间:2016-05-23 07:33:30

标签: retina-display google-tag-manager screen-resolution

我试图寻找一种方法来分析视网膜显示与正常显示转换率,但我找不到正确的变量来检查设备是否使用视网膜显示。我在很多论坛上搜索过,这些帖子要么太旧(自2010年起),要么因GTM的变化而过时。 有谁知道是否可以在GTM中跟踪设备分辨率?

如果您要回答一个链接,请确保您阅读了解决方案的完整描述,因为我经历了很多,并且由于我提到的原因,它们都被证明是错误的或无法实施之前。

我找到了this answer,但不幸的是,最后一条评论说它停止了工作。

3 个答案:

答案 0 :(得分:0)

Google Analytics跟踪屏幕分辨率 - 您可以在自定义报告中访问它,作为辅助维度,或导航到: 观众>技术>浏览器&操作系统>屏幕分辨率(屏幕分辨率是图表下方的可选主要维度)。

此图表为您提供目标转换率,但如果您需要,您还可以创建一个您喜欢的分辨率的分段,以及其他分辨率的分段,并将两者与任何其他报告进行比较。

然而,' Retina Display'是Apple使用的营销术语(它实际上是他们的注册商标)。尽管该术语确实有意义,但像人类视网膜能够观察到的像素密度更高,您会发现它们的使用方式各不相同,因为您需要将不同的设备放在距离您脸部不同的距离。因此,视网膜'预计iPhone的像素密度会高于视网膜的像素密度。 ipad公司

答案 1 :(得分:0)

GTM本身不测量任何东西,但你可以使用任何可以通过javascript获得的值。

我发现检测视网膜显示的一个建议是使用devicepixelratio,显然是ratio equal to or higher than 2 suggests a retina display。 devicepixelratio在IE上不起作用(虽然与Edge一起使用),但是这里是suggested polyfill的链接。

因此,如果您在GTM中创建自定义JS变量,您可以使用它(我承认我自己没有测试过,但它似乎适用于其他人)。

答案 2 :(得分:0)

您还可以将功能更改为使用matchMedia和分辨率与dpi而不是devicePixelRatio来检测它是否是视网膜:

创建自定义JavaScript变量pixel_ratio

function () {
    //Configure resolutions here, will return value of ratio:
    var pixel_ratio = [
    {'pixel_ratio': 'all', 'ratio': 1},
    {'pixel_ratio': '(min-resolution: 144dpi)', 'ratio': 1.5},
    {'pixel_ratio': '(min-resolution: 192dpi)', 'ratio': 2}
    ];
    var result;
    pixel_ratio.forEach(function (element) {
        var ratio = 1;
        //If browser support matchMedia, use it
        if (window.matchMedia) {
        // return current media query
            if (window.matchMedia(element.pixel_ratio).matches) {
                result = element.ratio;
            }
            } else { //matchMedia not supported
                if (window.screen.systemXDPI !== undefined 
                    && window.screen.logicalXDPI !== undefined 
                    && window.screen.systemXDPI > window.screen.logicalXDPI) {
            // Only allow for values > 1
            ratio = window.screen.systemXDPI / window.screen.logicalXDPI;
            } else if (window.devicePixelRatio !== undefined) {
                ratio = window.devicePixelRatio;
            }
            if (element.ratio === (Math.round(ratio * 100) / 100)) {
                result = element.ratio;
            }
        }
    });
    return result + 'x';
}

在GA中为pixel_ratio创建自定义维度。选择范围为“命中”。请注意每个维度的索引值。 在GTM中,在基本GA网页浏览标记中配置自定义维度,与GA中的维度索引值匹配。