获取通讯录,一条记录里面只有一条电话号码没问题,但是如果有2条电话的话只能查询出来一条。另外一条该怎么取?
认证高级PHP讲师
Permulaan pertanyaan semua nombor, kemudian gunakan kursor untuk melintasi
Melihat kod ini sepatutnya menyelesaikan masalah//Dapatkan pelajar buku alamatpublic void getLocalContactsInfos(Konteks Konteks) {
ContentResolver cr = context.getContentResolver(); Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); LogUtil.e("contact count ", cursor.getColumnCount()); while (cursor.moveToNext()) { //取得联系人名字 int nameFieldColumnIndex = cursor.getColumnIndex(ContactsContract.PhoneLookup.DISPLAY_NAME); String name = cursor.getString(nameFieldColumnIndex); //取得电话号码 String ContactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=" + ContactId, null, null); String PhoneNumber = ""; //多个电话号码时遍历 while (phone.moveToNext()) { PhoneNumber = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); //格式化手机号 PhoneNumber = PhoneNumber.replace("-", ""); PhoneNumber = PhoneNumber.replace(" ", ""); } } cursor.close();
Permulaan pertanyaan semua nombor, kemudian gunakan kursor untuk melintasi
Melihat kod ini sepatutnya menyelesaikan masalah
//Dapatkan pelajar buku alamat
public void getLocalContactsInfos(Konteks Konteks) {