2017-03-17 56 views
1

我一直負責從德爾福2010年桌面應用程序發送數據到谷歌分析,所以我們可以跟蹤程序的哪些部分正在使用更重的(或使用)。我正在使用Indy發佈帖子,該帖子似乎在生成有效回覆,但我在Google Analytics一側沒有看到任何內容。我對Google Analytics(分析)完全陌生,因此可能會在發佈內容或查看它的過程中出現問題。我確實在分​​析中創建了應用視圖,但不知道我是否正確設置了它。發佈到谷歌分析從德爾福應用程序

Parameters := TStringList.Create; 
Parameters.Add('v=1'); //Version 
Parameters.Add('&tid=UA-nnnnnnnn-n'); //Tracking ID 
Parameters.Add('&cid=555');   // 
Parameters.Add('&t=test2');   // Screenview hit type. 
Parameters.Add('&an=AppName');  // App name 
Parameters.Add('&av=' + sAppVersion); // App version 
Parameters.Add('&aid=12345');   // App Id 
Parameters.Add('&aiid=InstallerID'); // App Installer Id 
IdHTTP.Post('https://www.google-analytics.com/collect',Parameters); 
Result:= IdHTTP.ResponseText; 

我已驗證跟蹤ID(用上面的UA-nnnnnnnn-n替換)是正確的。想知道我要提交的內容是否完整,以及/或者我需要做些什麼才能看到GA方面的衝擊。謝謝。

+0

您可能已經意識到了這一點,但GA在事件顯示之前有一些延遲,除非您正在查看實時視圖。默認過濾排除今天的所有內容,除非您保存過濾器的行爲不同。如果您對GA不熟悉,則可能希望在測試應用程序時在GA中顯示結果,但這不是默認行爲。 –

+0

我的確接受了這個。我都觀看了實時視圖,並且我回頭去看幾天前的事件。其他人設置了GA,所以我不確定問題是否存在 - 但過濾器顯示爲空白。 – Eric

回答

0

解決了這個問題。原來是一個需要幫助的三件事:

  1. 當手動構建HTTPS參數,一個一般每個新參數之前,需要一個&。在使用Indy的TIdHTTP.Post傳遞TStringList參數時,&參數之前不會生成任何返回的錯誤,但它也不起作用。取&超出參數。添加修復此問題。
  2. 要想知道哪些參數必須包含在一起,分析擊中構建器提供了一種快速確定命中是否有效或是否缺少參數的方法。 (有些參數只需要在組合。)
    https://ga-dev-tools.appspot.com/hit-builder/
  3. 傳入命中(甚至在從命中建設者有效的格式),可導致沒有明顯的效果,而不建立一個儀表板/ widgit或報告專門用來展示你正在產生的打擊類型。因此,已配置爲對網頁視圖進行計數的現有站點似乎並未顯示與現有視圖配置不同的應用點擊或事件或點擊類型。

修復它們,並且工作正常。

0

您可以使用the /debug/collect/ endpoint instead of /collect/驗證您的匹配,並接收包含每個請求的任何可能錯誤的響應。

+0

我切換到''/ debug/collect'',但在ResponseText中只獲得「HTTP/1.0 200 OK」(與添加/調試前相同)。如果以'.../debug/collect /'(以/結尾)結束,我得到錯誤:EIdHTTPProtocolException:HTTP/1.0 404 Not Found(在我到達響應文本之前發生錯誤)。 – Eric