2010-05-25 47 views
5

मैं जानना चाहता हूं कि मेरे ऐप का उपयोग किस प्रकार के उपयोगकर्ता कर रहे हैं।एंड्रॉइड ऐप को ट्रैक और विश्लेषण कैसे करें?

मुझे लगता है कि मुझे डिवाइस आईडी, नेटवर्क प्रकार, नेटवर्क प्रदाता नाम और उसका आईपी पता चाहिए। क्या इस काम को करने के लिए कोई ढांचा है? और निश्चित रूप से मैं इसे करने से पहले इसे सक्षम करने के लिए उपयोगकर्ता से पूछूंगा और इसे निष्क्रिय करने के लिए एक विकल्प छोड़ दूंगा जब उपयोगकर्ता इसे टॉगल करना चाहता है।

+1

कृपया अपने एप्लिकेशन का नाम पोस्ट करते हैं, तो मुझे पता है कि है यह से बचने के लिए। कभी गोपनीयता के बारे में सुना? – RoToRa

+0

मैंने अपनी टिप्पणी के लिए अपना प्रश्न और धन्यवाद अपडेट किया। – virsir

उत्तर

3

आप इस डेटा (के बारे में डिवाइस आईडी या IP पता यकीन नहीं) में से कुछ इकट्ठा करने के लिए Flurry या Google Analytics की तरह एक सेवा का उपयोग कर सकते हैं, लेकिन जैसा कि अन्य लोगों ने कहा, तो आप इस बनाने के लिए चाहते हो सकता है गोपनीयता चिंताओं के कारण एप्लिकेशन वरीयता के माध्यम से "ऑप्ट-इन"।

2

आप अपने ऐप में प्रोग्रामिंग के माध्यम से इस जानकारी को पढ़कर यह अपेक्षाकृत आसान कर सकते हैं और फिर इसे प्रति एसएमएस, ईमेल, या बस इसे सर्वर पर अपलोड कर सकते हैं।

हालांकि, मुझे नहीं लगता कि उपयोगकर्ता बहुत भाग्यशाली होंगे कि आप यह कर रहे हैं। कम से कम आपको उन्हें इसके बारे में सूचित करना होगा।

एक आईडी के लिए आप इस इस्तेमाल कर सकते हैं:

http://developer.android.com/reference/android/telephony/TelephonyManager.html#getDeviceId%28%29

आईपी प्राप्त करने के लिए आप इस कोड को इस्तेमाल कर सकते हैं:

public String getLocalIpAddress() { 
    try { 
     for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { 
      NetworkInterface intf = en.nextElement(); 
      for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { 
       InetAddress inetAddress = enumIpAddr.nextElement(); 
       if (!inetAddress.isLoopbackAddress()) { 
        return inetAddress.getHostAddress().toString(); 
       } 
      } 
     } 
    } catch (SocketException ex) { 
     Log.e(LOG_TAG, ex.toString()); 
    } 
    return null; 
} 

नेटवर्क प्रकार प्राप्त करने के लिए (मुझे लगता है कि अपने वाईफाई के बारे में बात या मोबाइल) आप इस कोड स्निपेट का उपयोग कर सकते हैं:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

//mobile 
State mobile = conMan.getNetworkInfo(0).getState(); 

//wifi 
State wifi = conMan.getNetworkInfo(1).getState(); 

और फिर इस तरह इसका इस्तेमाल:

if (mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING) { 
    //mobile 
} else if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) { 
    //wifi 
} 
0

Google के पास इस उद्देश्य के लिए एक पूर्ण एसडीके है। http://code.google.com/mobile/analytics/docs/android/

पृष्ठ से:: प्रलेखन और विवरण पर उपलब्ध हैं

Google Analytics मोबाइल एप्लिकेशन के लिए SDKs मानक के माध्यम से उस गतिविधि मोबाइल एप्लिकेशन में गतिविधि पर नज़र रखने और रिपोर्ट करने के लिए एक इंटरफेस प्रदान Google Analytics डैशबोर्ड।

ट्रैकिंग मोबाइल अनुप्रयोगों में वेबसाइट पृष्ठों को ट्रैक करने से संरचनात्मक विविधताएं हैं। इसी कारण से, यह समझने के लिए कि यह एसडीके कैसे काम करता है, समझने के लिए Analytics ट्रैकिंग से परिचित होना चाहिए।

एसडीके उपयोग दो बुनियादी प्रकार उपयोगकर्ता बातचीत की ट्रैक करने के लिए:

पृष्ठ-अवलोकन - यह एक पारंपरिक वेब साइट के लिए माप की मानक इकाई है, और यात्राओं, सत्र की अवधि की गणना करने के लिए किया जाता है, और उछाल दर। हम अनुशंसा करते हैं कि आप कम से कम एप्लिकेशन लोड पर एक पृष्ठदृश्य अद्वितीय विज़िटर ट्रैक करें।चूंकि मोबाइल ऐप्स में HTML पृष्ठ नहीं हैं, तो आप को यह तय करना होगा कि कब (और कितनी बार) पृष्ठदृश्य अनुरोध को ट्रिगर करें, और उद्देश्यों की रिपोर्टिंग के लिए वर्णनात्मक नाम चुनें। आपके द्वारा चुने गए नाम आपकी Analytics रिपोर्ट में सामग्री रिपोर्ट, में पेज पथ के रूप में आते हैं, भले ही वे वास्तव में HTML पृष्ठ नहीं हैं।

घटनाक्रम - आप Google 0 Analytics के ईवेंट ट्रैकिंग अनुभाग में रिपोर्ट किए जाने वाले अतिरिक्त ईवेंट को परिभाषित कर सकते हैं। घटनाक्रम श्रेणियों का उपयोग करके समूहित किए जाते हैं और प्रति-ईवेंट लेबल, का भी उपयोग कर सकते हैं जो रिपोर्टिंग में लचीलापन प्रदान करता है। उदाहरण के लिए, एक मल्टीमीडिया ऐप अपनी वीडियो श्रेणी के लिए प्ले/रोक/रोक सकता है और प्रत्येक वीडियो नाम के लिए एक लेबल असाइन कर सकता है। Google Analytics रिपोर्ट तब वीडियो ईवेंट के साथ टैग की गई सभी घटनाओं के लिए समेकित ईवेंट होगी। ईवेंट ट्रैकिंग पर अधिक जानकारी के लिए , ईवेंट ट्रैकिंग मार्गदर्शिका

1

आप अपनी खुद की समाधान रोल करने की जरूरत नहीं है को देखने के नि: शुल्क, ऑफ-द-शेल्फ समाधान जो काम करते हैं और आप ध्यान केंद्रित करने देगा का खूब देखते हैं आपके ऐप पर मैं वेब एनालिटिक्स समाधान से दूर रहने की भी सिफारिश करता हूं क्योंकि एप्लिकेशन मॉडल अलग है इसलिए इसमें एक मोबाइल ऐप जूता-अजीब अजीब हो सकता है। आप अपने ऐप को पृष्ठ दृश्य और रेफ़रल के रूप में नहीं सोचते हैं, है ना?

Localytics एक समाधान है: सेवा नि: शुल्क है, SDK is open source, और टर्नअराउंड समय तत्काल है ताकि 10 मिनट में एकीकरण किया जा सके और सत्यापित किया जा सके।

[अस्वीकरण: यह मेरा साइट है]

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