2012-04-23 12 views
6

मैं अपने स्मार्ट टीवी एप्लिकेशन में Google Analytics को एकीकृत करने की कोशिश कर रहा हूं।Google Analytics और सैमसंग स्मार्ट टीवी ऐप्स

यह जावास्क्रिप्ट आधारित एप्लिकेशन है, और मैंने सैमसंग डीफोरम पर उपलब्ध सभी समाधानों का प्रयास किया है, लेकिन कोई भी काम नहीं करता है।

मुख्य index.html फ़ाइल के भाग में, मैं गूगल एनालिटिक्स लोड:

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

फिर, मैं पेज प्रवेश द्वार पर नज़र रखने हूँ:

<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> 

दुर्भाग्य से, मैं पृष्ठ दिखाई नहीं दे मेरे Analytics खाते के अंदर ट्रैक किया गया। वास्तविक खाता आईडी UA-XXXXXXXX-X नहीं है, मैं वास्तविक कोड में सही आईडी का उपयोग कर रहा हूं।

मैं क्या गलत कर रहा हूं?

उत्तर

1

जहां तक ​​मुझे पता है कि आपको इफ्रेम का उपयोग करके उससे लिंक करने की आवश्यकता है, अन्यथा यह घटनाओं को आग नहीं देगा।

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

धन्यवाद। Iframe का उपयोग करके, क्या मैं ईवेंट और आंतरिक पृष्ठ दृश्यों को ट्रैक करने में सक्षम हूं? –

+0

यदि आप उस फ़ाइल में _trackEvent जोड़ते हैं जो iframe लोड करता है तो हाँ। हालांकि अगर आप बाद में कुछ और ट्रैक करना चाहते हैं तो आपको iframes scr को बदलना होगा ताकि यह उस आवश्यक घटना के साथ एक अलग पृष्ठ लोड कर सके। तो आप एकाधिक ट्रैकिंग.html फ़ाइलों के साथ समाप्त हो सकते हैं। इसे काम करने के लिए यह एक गंदा तरीका है, लेकिन कम से कम आपको कुछ आंकड़े मिलते हैं। – Scriptor

+0

मैं प्रदर्शन के बारे में चिंतित हूं .... –

7

तो आपको फ़ाइल को GA स्निपेट के अंदर रखने के लिए एक आईफ्रेम की आवश्यकता है। फ़ाइल दूरस्थ सर्वर पर होनी चाहिए, क्योंकि सैमसंग स्मार्ट टीवी ऐप्स लोकलहोस्ट पर काम करता है और GA स्थानीय से कॉल को अनदेखा करता है।

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

जीए से स्निपेट को, लाइन को हटा सकते हैं आप iframe लोड पर trackPage गिनती करने के लिए जीए नहीं करना चाहते हैं।

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

इसलिए उदाहरण trackPage("/sports/football/barcelona chelsea") के लिए बुला कहीं अनुप्रयोग में सटीक यूआरएल साथ जीए ट्रैक पेज का उत्पादन करेगा:

/samsung/sports/football/barcelona_chelsea 

यह

_gaq.push(['_trackPageview']); 

तब मुख्य लिपि में आप इस समारोह को जोड़ने बहुत कुशल है - आप जीए रीयल टाइम के साथ खेल सकते हैं और आप देख सकते हैं कि यह कितना अच्छा काम करता है। जैसा कि GA एसिंक्रोनस करता है, iframe कभी भी पुनः लोड नहीं होता है।

1

मैं सिफारिश करेंगे - और साथ उदाहरण के लिए एक अजाक्स यहाँ वर्णित की तरह गूगल एनालिटिक्स के लिए मिलता है के साथ फोन अपने/अपने ही लागू करने, हूँ- समाप्त हो गया https://stackoverflow.com/a/24181771/174953 सभी आवश्यक मानकों को जीए के स्वयं के प्रलेखन https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#content

में पाया जा सकता विशेष रूप से के बाद से

मैंने सैमसंग मंचों में खोज की है कि iframe विकल्प सभी मॉडलों पर काम नहीं करता है, मुझे विश्वास है कि 2013+

संबंधित मुद्दे