android中获取手机联系人是通过 ContentResolver类实现的,ContentResolver是用来提供android开发者对系统应用及其他应用的数据库进行解析的,通过特定的Uri访问相应的数据库。进而获取系统应用或者其他应用的应用数据,获取android手机联系人的URL是Phone.CONTENT_URI,Phone类提供了很多获取手机联系人的数据库的URI,Phone.CONTENT_URI是手机联系人的根Uri。
//获取联系人信息
public List<Person> getPhoneContact(){
List<Person> persons = null;
//获得内容解析者
ContentResolver resolver = getContentResolver();
//1.URI-->查询根目录 2.查询条目 3.查询条件 4.查询参数 5.是否按顺序排列
//获得所有联系人Id,联系人名称,联系人手机号码
Cursor phoneCursor = resolver.query(Phone.CONTENT_URI, new String[]{Phone._ID,Phone.DISPLAY_NAME,Phone.NUMBER}, null, null, null);
if (phoneCursor!=null) {
persons = new ArrayList<Person>();
while (phoneCursor.moveToNext()) {
//获得联系人号码
String phoneNumber = phoneCursor.getString(2);
if (phoneNumber == null) {
continue;
}
//联系人名称
String name = phoneCursor.getString(1);
//联系人ID
String id = phoneCursor.getString(0);
Person person = new Person(name, phoneNumber, id);
persons.add(person);
}
phoneCursor.close();
}
return persons;
},
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。