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;    },

更多相关文章

  1. Android(安卓)studio 通过以servlet搭建的服务器访问 PC端 mysql
  2. Android向服务器的数据库MySQL传输数据:经过修正的 Android(安卓)
  3. Android基础 : Android(安卓)Content Provider[转]
  4. 模拟来电的实现
  5. android adb 使用初阶
  6. Android(安卓)SQLite数据库增删改查操作的使用详解
  7. 为Android修改hosts-无需重启
  8. android 管理手机短信
  9. Mac系统下android studio无法识别手机

随机推荐

  1. Android控件架构
  2. Android基于监听的事件处理
  3. Google Espresso:一种用于云中Android(安
  4. Qt的前景如何?Qt for Android(安卓)好吗?
  5. Android电量优化
  6. 第14天 Android(安卓)Touch事件学习 1 点
  7. Android开发笔记(八十二)系统软件兼容
  8. Cocos2d-x跨Android&iOS平台开发入门
  9. Android开发人才前景分析及建议
  10. YouTube向美国所有Android用户推送画中画