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; },
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。