为了账号安全,请及时绑定邮箱和手机立即绑定

从电话获取一些联系信息数据

从电话获取一些联系信息数据

holdtom 2021-03-31 18:15:31
我需要获取Android设备联系人的ID,名字,姓氏,号码(或数字),电子邮件,网站的列表。我知道通过获取ID可以查询电话号码,这不是什么大问题。但是我不知道如何查询才能正确获取所有这些列。我应该为我的名字需要ContactsContract.CommonDataKinds.StructuredName电子邮件我需要ContactsContract.CommonDataKinds.Email.ADDRESS,id的联系方式和网站ContactsContract.CommonDataKinds.Website.URL。我的代码返回了奇怪的值,例如GIVEN_NAME的单位数字,FAMILY_NAME的null,Email.ADDRESS的联系电话之一。但是我认为问题是查询URI,我应该使用哪一个?ContentResolver cr = getActivity().getContentResolver();String[] projection = new String[] {                    Contacts._ID,                  ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME,  ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME,                    ContactsContract.CommonDataKinds.Website.URL,                    ContactsContract.CommonDataKinds.Email.ADDRESS};Cursor nameCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,                    projection,                    null,                    null,                    null);while (nameCur.moveToNext()) {   String given = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME));   String family = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME));   String email = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS));   Integer id= nameCur.getInt(nameCur.getColumnIndex(Contacts._ID));   String website = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.Website.URL));//do some work with strings...                }
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 256 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信