Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 联系人列表中有多少联系人_Android_Contacts_Android Contacts - Fatal编程技术网

Android 联系人列表中有多少联系人

Android 联系人列表中有多少联系人,android,contacts,android-contacts,Android,Contacts,Android Contacts,我如何知道联系人列表中有多少联系人?我得到了联系人号码,但一个人可以有多个联系人,我想在查找联系人列表中的联系人总数时说明这一点。查找所有联系人的电话号码计数 Cursor cursor = managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null); int count = cursor.getCount(); 查找特定RawContactID的所有电话号码的计数(在Ra

我如何知道联系人列表中有多少联系人?我得到了联系人号码,但一个人可以有多个联系人,我想在查找联系人列表中的联系人总数时说明这一点。

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

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

int count = cursor.getCount();
查找特定RawContactID的所有电话号码的计数(在RawContactID中传递联系人id值)

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

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()

Contacts Contract.Contacts和Raw Contacts之间的关系可在以下位置找到:


希望这能解决你的疑问

一个非常古老的线程,但是如果你想用电话号码统计联系人,你可以使用:

Cursor cursor =  managedQuery(ContactsContract.Contacts.CONTENT_URI, null, ContactsContract.Contacts.HAS_PHONE_NUMBER, null, null);
int count = cursor.getCount();

当然现在不推荐使用managedQuery,但这对绑定有帮助:)

我们知道managedQuery现在不推荐使用,我们可以这样做

ContentResolver contentResolver = getContentResolver();
            Cursor cursor = contentResolver.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " ASC");
            int contactNewCount = cursor.getCount();
            cursor.close();

很抱歉,它不起作用。它给了我一个有联系号码的,只有电子邮件ID的。那么,我们可以得到储存在联系人列表中的电话号码总数吗?是的,这个代码将返回所有联系人。我无法得到确切的要求。我回答了以下问题“我如何知道联系人列表中有多少联系人?”您需要查找所有联系人的电话号码总数吗?在这种情况下,我正在编辑我的答案。
ContentResolver contentResolver = getContentResolver();
            Cursor cursor = contentResolver.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " ASC");
            int contactNewCount = cursor.getCount();
            cursor.close();