2011-04-30 139 views
2

我目前使用舊的聯繫人API(在Android 2.0上已棄用),我想知道是否是一種方式來獲取所有聯繫人用他們的電話號碼,而不是像我在我發現的幾個網站中建議的那樣爲每個聯繫人單獨查詢。什麼是有效的方式來獲取聯繫人的所有聯繫人姓名和電話號碼API

例如在舊的API,我可以做這樣的事情:

String[] projection = new String[] { Phones._ID, Phones.NAME, 
      Phones.NUMBER }; 

    Uri contacts = Phones.CONTENT_URI; 

    Cursor managedCursor = managedQuery(contacts, 
      projection, // Which columns to return 
      null, // Which rows to return (all rows) 
      null, // Selection arguments (none) 
      // Put the results in ascending order by name 
      Phones.NAME + " ASC"); 

感謝。

+0

你能告訴我是什麼你的意思是舊API,我的意思是在[androidDev](http://developer.android.com/resources/articles/contacts.html)中說的版本 – 2011-04-30 10:19:10

+0

,有一個新的聯繫人API從Android 2.0開始。 – Alex 2011-04-30 10:57:27

回答

4

我發現我一直在尋找,並使用新的API是更簡單,這裏是他們的名字和電話號碼查詢所有聯繫人的新方法:

Cursor managedCursor = getContentResolver() 
    .query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
    new String[] {Phone._ID, Phone.DISPLAY_NAME, Phone.NUMBER}, null, null, Phone.DISPLAY_NAME + " ASC"); 
+0

我還需要獲得first_name和last_name。我可以通過單個查詢獲得這些電話號碼嗎?這裏是我的問題鏈接:[link](http://stackoverflow.com/q/19569896/2563740) – Susomrof 2013-11-06 06:12:21

相關問題