【问题标题】:Can a Google Apps Script Web App using UiService be tracked with Google Analytics?可以使用 Google Analytics 跟踪使用 UiService 的 Google Apps Script Web App 吗?
【发布时间】:2012-09-18 11:03:06
【问题描述】:

是否有可能将工作的 Google Analytics 跟踪器插入使用 UiApp 作为用户界面的网络应用程序中?

这将为应用所有者提供深入的使用情况统计信息。

我能想到的唯一可能的选择是将对网络应用程序的每次访问(包括用户 ID)存储在 ScriptDb 中,从数据隐私角度来看是有问题的,并且不提供有关用户的基本信息,例如位置、语言或设备.

【问题讨论】:

    标签: google-analytics google-apps-script


    【解决方案1】:

    是的,这是完全可行的,我为此有一个内部库。这个概念是你从谷歌分析服务器 Urlfetch 一个 gif 并通过查询字符串传递数据。这是工作代码和测试。 Google Analytics 文档参考是内联的:

    编辑:我已将以下内容打包为名为 GASAnalytics 的库,并将项目密钥“MvzvykyEXRZJoG1Gjj2h1JnHAGDwXQ1CH”添加到此处的更多 Google Apps 脚本库列表中:https://docs.google.com/spreadsheet/ccc?key=0AhDqyd_bUCmvdGxjNUpGZkFKcmxsekE3VHNWMEh4amc#gid=0

    /**
    * hits Google Analytics with a "path" you want to track as a pageview 
    * e.g. track("UA-ABC123-4", "/track/my/event")
    */
    function track(propertyId, path) {
      //ref https://developers.google.com/analytics/resources/articles/gaTrackingTroubleshooting#gifParameters
      //https://developers.google.com/analytics/devguides/collection/other/mobileWebsites
    
       var utmGifLocation = "http://www.google-analytics.com/__utm.gif";
    
        // Construct the gif hit url.
        var utmUrl = utmGifLocation + "?" +
        "utmwv=4.4sa" +
        //"&utmcn=1"+ //added - extra - not required
        "&utmn=" +  (new Date().getTime())+ //unique - cache buster
        "&utmhn=" + 'example.com' +
        "&utmr=" + '-' +
        "&utmp=" + encodeURIComponent(path) + 
        "&utmac=" + propertyId +
        "&utmcc=__utma%3D999.999.999.999.999.1%3B" +
        "&utmvid=" + Math.random() +
        "&utmip=" + '-';
    
    
      Logger.log("Fetching " + utmUrl);
      var test = UrlFetchApp.fetch(utmUrl);
      return;
    }
    
    function testTrack() {
      // confirm in GA > Realtime (immediate) or Standard Reports > Content > Content drilldown (after 2 hours)
      track("UA-heyuseyourown:/!", "/track1/my1/test1"); 
    }
    

    让我们知道你的进展。

    【讨论】:

    • 您提出的解决方案与 Google Analytics Tracker 代码不同。以下是剩下的问题:
    • 登录的访问者始终是 GAS 服务器 - 有关实际用户的位置、语言或设备的信息会丢失。该脚本将请求用户代表他授权 URLfetch。
    • 是的,它是不同的,因为你不能让代码在浏览器中运行。代码始终在服务器端调用,客户端浏览器数据和 cookie 不会通过服务器公开。例如,您无法从浏览器获取 lang 或 useragent,也无法从 referer 或 ip 获取。我不认为 HtmlService 会改变这一点。对于位置,我的 GA 报告显示命中来自澳大利亚 > 悉尼,因此 script.google.com 服务器至少能够对位置(但可能不是您的)进行一些智能边缘缓存。关于身份验证,您无法绕过 GAS 安全控制,因此有效用户必须授权(一次)。
    猜你喜欢
    • 2019-07-21
    • 2013-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多