Google Analytics and Samsung Smart TV Apps

回眸只為那壹抹淺笑 提交于 2019-12-30 04:57:05

问题


I'm trying to integrate Google Analytics in my Smart TV Application.

It is a Javascript based application, and I have tried all the solutions available on the SamsungDForum, but no one works.

In the part of the main index.html file, I load Google Analytics:

<script type='text/javascript' async='true' src='https://ssl.google-analytics.com/ga.js'></script>

Then, I am tracking the page entrance:

<script type='text/javascript'>
    var _gaq = _gaq || [];
    _gaq.push([ '_setAccount', 'UA-XXXXXXXX-X' ]);
    _gaq.push([ '_setCustomVar', 1, 'Device Information', 'Samsung Smart TV' ]);
    _gaq.push([ '_trackPageview' ]);
    _gaq.push([ '_trackEvent', "Application", "Start" ]);
</script>

Unfortunately, I cannot see the page tracked inside my Analytics account. Real account id is not UA-XXXXXXXX-X, I am using the correct ID in actual code.

What I am doing wrong?


回答1:


So you need an iframe to put the file with GA snippet inside. The file must be on remote server, because Samsung Smart TV apps works on localhost and GA ignore calls from local.

  <iframe name='ga' src="http://example.com/ga.html" width="0" height="0"/>

From the GA snippet you can remove the line, if you don't want GA to count trackPage on iframe load.

  _gaq.push(['_trackPageview']);

Then in the main script you add this function:

  var trackPage = function(url) {
    if (window.ga && window.ga._gaq)
      window.ga._gaq.push(['_trackPageview', '/samsung' + url.replace(/ /g, "_")]);
  };

So calling for example trackPage("/sports/football/barcelona chelsea") somewhere in the app will produce GA track page with exact url:

 /samsung/sports/football/barcelona_chelsea

It is very efficient - you can play with GA Real time and you can see how nice it works. As GA works asynchronous the iframe never gets reloaded.




回答2:


As far as i know you need to link to it using an Iframe, otherwise it will not fire the events.

<iframe src='http://yourwebserver.com/ga-code-application-start.html' width='0' height='0'/></iframe>



回答3:


I would recommend - and ended up with- implementing your/my own, with for example an Ajax call with GET to Google Analytics like described here https://stackoverflow.com/a/24181771/174953 Especially since all needed parameters can be found in GA's own documentation https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#content

I discovered in Samsungs forums that the iframe option didn't work on all models, I believe not on 2013+



来源:https://stackoverflow.com/questions/10280646/google-analytics-and-samsung-smart-tv-apps

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!