2010-03-15 63 views
1

我有一個'n'聯繫人ID列表,我需要獲取聯繫人詳細信息。一種使用聯繫人ID進行n查詢並檢索這些聯繫人的簡單方法。但是,如果n很大,這將非常耗時。我想知道是否有更簡單的方法來獲得這些結果(如批量查詢等)。當ID已知時獲取聯繫人

回答

1
ContentResolver cr = context.getContentResolver(); 
String[] projection = new String[] { ContactsContract.Contacts._ID, 
       ContactsContract.Contacts.DISPLAY_NAME}; 
Cursor c = cr.query(ContactsContract.Contacts.CONTENT_URI, projection, 
       ContactsContract.Contacts._ID + " in ("+comma_delimited_ids+") , null, 
       ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"); 

然後可以循環光標

if (c!=null) { 
      for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) { 
         // your code to get details from cursor 
      } 
      c.close(); 
     } 
+0

非常感謝。這對我來說很有魅力 – pankajagarwal 2010-03-16 05:25:47

相關問題