2014-05-13 4 views
6

मैंने अपने आवेदन में इरादे का उपयोग करके स्काइप वीडियो/ऑडियो कॉलिंग कार्यक्षमता लागू की है, यह ठीक काम कर रहा है। लेकिन अब मैं स्काइप खाते से सभी संपर्क सूची प्राप्त करना चाहता हूं, यह संभव है?क्या एंड्रॉइड में मेरे स्काइप खाते से संपर्क प्राप्त करना संभव है?

क्या स्काइप खाते के संपर्कों की सूची दिखाने का कोई वैकल्पिक तरीका है कृपया कोई विचार दें?

+0

स्काइप एपीआई को लागू करने की कोशिश करनी है? –

+0

नहीं। मैं इरादे से यह कर रहा हूं –

+2

मुझे लगता है कि आपको यहां खातों तक पहुंचने के लिए अपने एपीआई का उपयोग करना चाहिए- http://developer.skype.com/skype-uris/reference –

उत्तर

3

सभी संपर्क (बशर्ते वे सिंक हो जाएं) ContactsContract प्रदाता के साथ पूछताछ की जा सकती है। RawContacts.ACCOUNT_TYPERawContacts तालिका का कॉलम प्रत्येक प्रविष्टि के लिए खाता प्रकार इंगित करता है ("कच्चा" का अर्थ है कि इसमें सभी प्रविष्टियां हैं, उदाहरण के लिए एकाधिक समेकित संपर्क वाले एकल व्यक्ति के लिए एकाधिक पंक्तियां)।

Skype संपर्कों पढ़ने के लिए, आप कुछ इस तरह कर सकते हैं:

Cursor c = getContentResolver().query(
       RawContacts.CONTENT_URI, 
       new String[] { RawContacts.CONTACT_ID, RawContacts.DISPLAY_NAME_PRIMARY }, 
       RawContacts.ACCOUNT_TYPE + "= ?", 
       new String[] { "com.skype.contacts.sync" }, 
       null); 

int contactNameColumn = c.getColumnIndex(RawContacts.DISPLAY_NAME_PRIMARY); 
ArrayList<String> mySkypeContacts = new ArrayList<String>(); 

while (c.moveToNext()) 
{ 
    /// You can also read RawContacts.CONTACT_ID to query the 
    // ContactsContract.Contacts table or any of the other related ones. 
    mySkypeContacts.add(c.getString(contactNameColumn)); 
} 

यकीन भी AndroidManifest.xml फ़ाइल में android.permission.READ_CONTACTS अनुमति का अनुरोध करना न भूलें।

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