android開發——獲取手機聯繫人

   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;
    },
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章