3

我是android编程的新手,如果这是一个简单的问题,请原谅。如何从通讯录中获取联系人总数?

4

2 回答 2

13

查找所有联系人的电话号码计数

Cursor cursor =  managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);

int count = cursor.getCount();

查找特定 RawContactID 的所有电话号码的计数(在 rawContactId 中传递联系人 id 值)。

Cursor cursor =  managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.RAW_CONTACT_ID + " = " + rawContactId, null, null);

int count = cursor.getCount();

ContactsListActivity 中显示的联系人数量可以通过以下查询确定。

Cursor cursor =  managedQuery(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);

int count = cursor.getCount();

但是,如果在多个帐户下输入了一个人,则上述查询仅获得一个实例,因为 ContactsContract.Contacts 结合了所有此类联系人。

Cursor cursor =  managedQuery(RawContacts.CONTENT_URI, null, null, null, null);

int count = cursor.getCount();

ContactsContract.Contacts 和 RawContacts 之间的关系可以在 http://developer.android.com/resources/articles/contacts.html找到

于 2012-05-10T08:14:04.823 回答
0

对于联系人总数,请使用以下代码。

Cursor cursor =  managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);

int count = cursor.getCount();
于 2012-05-10T08:14:23.463 回答