2010-03-15 65 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

相关问题