google-analytics - Android Google Analytics-सेवा से कनेक्शन विफल रहा




(5)

मैंने अपने Android एप्लिकेशन में Google Analytics V2 को लागू करना शुरू कर दिया है, हालांकि मुझे परेशानी हो रही है।

मेरा मानना ​​है कि मैंने एक संपत्ति और प्रोफाइल के साथ एक सही तरीके से एक अकाउन्ट स्थापित किया है। मैंने Analytics.xml फ़ाइल में अपनी कुंजी दी है और प्रत्येक गतिविधि में मैं उपयोग करता हूँ

EasyTracker.getInstance().activityStart(this); ऑनस्टार्ट विधि में

तथा

EasyTracker.getInstance().activityStop(this); हर गतिविधि के onStop विधि में।

हालाँकि मुझे Google Analytics वेबसाइट पर कोई परिणाम नहीं दिख रहा है। इसके अलावा, मैंने डिबग विकल्पों को चालू किया और मैं Gav2 (Google Analytics) के विभिन्न संदेशों को लॉग कैट में देख सकता हूं, जो एक समस्या पर निर्भर करता है।

उदाहरण के लिए

11-04 21:56:48.000: W/GAV2(6376): Thread[main,5,main]: **Connection to service failed 1**
11-04 21:56:48.040: W/GAV2(6376): Thread[main,5,main]: **Need to call initialize() and be in fallback mode to start dispatch.**
11-04 21:56:48.050: I/GAV2(6376): Thread[main,5,main]: ExceptionReporter created, original handler is com.keypod.utils.AppCrashExceptionHandler
11-04 21:56:50.055: I/GAV2(6376): Thread[GAThread,5,main]: No campaign data found.
11-04 21:56:50.060: I/GAV2(6376): Thread[GAThread,5,main]: putHit called
11-04 21:56:50.410: I/GAV2(6376): Thread[GAThread,5,main]: putHit called
11-04 21:56:53.035: I/GAV2(6376): Thread[Service Reconnect,5,main]: connecting to Analytics service
11-04 21:56:53.035: I/GAV2(6376): Thread[Service Reconnect,5,main]: connect: bindService returned false for Intent { act=com.google.android.gms.analytics.service.START (has extras) }
**11-04 21:56:53.035: W/GAV2(6376): Thread[Service Reconnect,5,main]: Connection to service failed 1
11-04 21:56:53.035: I/GAV2(6376): Thread[Service Reconnect,5,main]: falling back to local store**
11-04 21:56:53.040: I/GAV2(6376): Thread[GAThread,5,main]: Sending hit to store
11-04 21:56:53.100: I/GAV2(6376): Thread[GAThread,5,main]: Sending hit to store
11-04 21:56:53.150: V/GAV2(6376): Thread[GAThread,5,main]: dispatch running...

ऐसा लगता है कि यह कनेक्ट नहीं हो सकता है और फिर यह स्थानीय स्टोर पर "फ़ॉलबैक" है। क्या मुझसे कुछ ग़लत हो रहा है? या क्या मुझे बस उस चेतावनी को अनदेखा करना चाहिए और साइट पर परिणाम दिखाने की प्रतीक्षा करनी चाहिए?

मैंने Google के मार्गदर्शक का चरण-दर-चरण अनुसरण किया।

धन्यवाद!


Answers

अपने मुख्यअनुसंधान onCreate () में केवल निम्नलिखित पंक्तियाँ जोड़ें:

GoogleAnalytics googleAnalytics = GoogleAnalytics.getInstance(getApplicationContext());
googleAnalytics.setAppOptOut(false); 

मैं अब अपने एनालिटिक्स पेज में परिणाम देख सकता हूं तो जाहिर तौर पर मुझे इंतजार करने की जरूरत है।

Google को उस चेतावनी के बारे में कुछ करना चाहिए, यह भ्रामक हो सकता है।

अद्यतन: एक दिलचस्प बात जो मैंने देखी है वह भी मदद कर सकती है, Google Analytics वेब इंटरफ़ेस वर्तमान दिन के डेटा को डिफ़ॉल्ट रूप से नहीं दिखाता है। वर्तमान दिन से एकत्र किए गए डेटा को देखने के लिए, आपको शीर्ष-दाईं ओर दिनांक सीमा बीनने वाले पर क्लिक करना होगा, और कैलेंडर से वर्तमान दिन (या कॉम्बोक्स से आज) का चयन करना होगा।



बस एक अतिरिक्त है कि आप डीबग करने के लिए घंटे बचा सकता है। मैंने logcat में gav2 के स्थानीय डिबग संदेशों को नहीं देखा। मुझे केवल चार gav2 स्टार्टअप संदेश दिखाई देंगे, जैसे "इनिशियल कॉल करने की आवश्यकता है .." और "सेवा अनुपलब्ध"। हालाँकि मैंने Google Analytics रियल-टाइम रिपोर्ट में विचार देखे थे।

क्या हुआ: मैंने onStart () में निम्न पंक्ति के साथ शुरुआत की

EasyTracker.getInstance().activityStart(this); 

और onCreate () से चालू डिबगिंग की तुलना में;

GoogleAnalytics.getInstance(getApplicationContext()).setDebug(true);

यह स्पष्ट रूप से गलत है क्योंकि onCreate () को onStart () से पहले निष्पादित किया गया है। अब मैंने दोनों को onStart () से क्रमिक रूप से सेट किया है।

EasyTracker.getInstance().activityStart(this); 
GoogleAnalytics.getInstance(getApplicationContext()).setDebug(true);

क्या गलत हुआ?

मैंने GAV2 Beta 4 ( https://developers.google.com/analytics/devguides/collection/android/v2/advanced ) के लिए Google उदाहरण का अनुसरण किया। यह onStart () कोड से शुरू होता है:

EasyTracker.getInstance().activityStart(this); 

डिबगिंग और ईवेंट ट्रैकिंग को जोड़ने में सक्षम करने के लिए, मैंने उन्नत उदाहरणों का पालन किया। वास्तव में सोच के बिना मैं onCreate में जोड़ा गया (उदाहरण की तरह):

googleAnalytics = GoogleAnalytics.getInstance(getApplicationContext())

मैंने डिबगिंग और ईवेंट को सक्षम करने के लिए googleAnalytics का उपयोग किया। चूंकि यह अपवाद नहीं फेंकता है और यह वास्तव में Google Analytics में परिणाम उत्पन्न करता है, इसलिए मैंने कुछ समय के लिए गलती को नोटिस नहीं किया। Gav2 स्टार्टअप लॉगकैट संदेश को इंगित करता है कि कुछ गलत है। लेकिन अगर आप gav2 से परिचित नहीं हैं तो यह 'सामान्य' व्यवहार हो सकता है।

जैसा कि अधिक लोग एक ही उदाहरण और सीखने की अवस्था का अनुसरण कर सकते हैं, मुझे लगा कि मैं एक पल ले सकता हूं और इसे लिख सकता हूं, आशा है कि इससे आपको कुछ समय बचा होगा। अगर आपको logcat में "putHit बुलाया" जैसे संदेश दिखाई नहीं देते हैं, तो आपको एक समान समस्या हो सकती है। सौभाग्य।


इंटेल ने 15 मई, 2012 को आईसीएस एमुलेटर के लिए अनुशंसित स्थापना निर्देश जारी किए। यह मेरे लिए काम करता था। एम्यूलेटर अब तेज़ है और यूआई चिकनी है।

निर्देशों का पहला भाग पर्याप्त विस्तृत है, इसलिए मुझे लगता है कि आप एंड्रॉइड एसडीके प्रबंधक, साथ ही इंटेल HAXM का उपयोग कर इंटेल x86 एटम सिस्टम छवि (ओं) को स्थापित करने में सक्षम थे।

अब यह सुनिश्चित करने के लिए कि बाकी सब कुछ स्थापित है ताकि आप अत्यधिक प्रदर्शन करने वाले एमुलेटर का आनंद उठा सकें:

और इसे शुरू करें:

sudo kextload -b com.intel.kext.intelhaxm (mac)

यदि HAXM ठीक से काम कर रहा है, तो आप एमुलेटर लॉन्च करते समय यह संदेश देख सकते हैं:

HAX काम कर रहा है और एमुलेटर तेजी से virt मोड में चलाता है

अन्यथा आप यह त्रुटि देख सकते हैं:

HAX काम नहीं कर रहा है और एमुलेटर इम्यूलेशन मोड एमुलेटर में चलाता है:
हैक्स मॉड्यूल खोलने में विफल

  • जीपीयू अनुकरण का प्रयोग करें। इस लेखन के रूप में GPU अनुकरण का उपयोग करते समय आप स्नैपशॉट विकल्प का उपयोग नहीं कर सकते हैं। सुनिश्चित करें कि जीपीयू अनुकरण "हां" पर सेट है।

  • डिवाइस मेमोरी को 1024 एमबी या उससे अधिक तक सेट करें , लेकिन इंटेल HAXM सेटिंग से अधिक नहीं। मैं प्रति डिवाइस 1024 एमबी और HAXM के लिए 2048 का उपयोग करता हूं।

सहेजने के बाद सेटिंग्स को हमेशा दोबारा जांचें! एम्यूलेटर आपके द्वारा सेट किए जाने की अनुमति के बारे में बहुत पसंद करता है, और यह आपको बताए बिना कॉन्फ़िगरेशन को वापस कर देगा।

इन सेटिंग्स के साथ सॉफ़्टवेयर कीबोर्ड अब प्रकट नहीं होता है, न ही ऑन-स्क्रीन बैक, मेनू और हालिया कुंजी करता है। यह वर्तमान आईसीएस इंटेल x86 सिस्टम छवि की एक सीमा प्रतीत होता है। आपको कीबोर्ड शॉर्टकट का उपयोग करने की आवश्यकता होगी।

मैक ओएस पर आपको काम करने के लिए एफ 1 - एफ 12 कुंजी के लिए एफएन + नियंत्रण रखना होगा। पेज अप / डाउन / बाएं / दाएं नियंत्रण + तीर कुंजियों का उपयोग करके किया जा सकता है।





android google-analytics