继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Android 读取手机联系人

woider
关注TA
已关注
手记 23
粉丝 209
获赞 1963

核心思想:使用内容提供器 ContentResolver 获取 Phone.CONTENT_URI 中的联系人信息。
首先在 AndroidManifest 中添加权限:

 <uses-permission android:name="android.permission.READ_CONTACTS" />

调用内容提供器获取联系人信息:

    private void readContacts() {
        Cursor cursor = null;
        try {
            //获取内容提供器
            ContentResolver resolver = getContentResolver();
            //查询联系人数据
            cursor = resolver.query(
                    ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                    null, null, null, null, null);
            //遍历联系人列表
            while (cursor.moveToNext()) {
                //获取联系人姓名
                String name = cursor.getString(cursor.getColumnIndex(
                        ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
                //获取联系人手机号
                String number = cursor.getString(cursor.getColumnIndex(
                        ContactsContract.CommonDataKinds.Phone.NUMBER));
                Log.v("woider", "Name:" + name + "\tPhone:" + number);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (cursor != null) {
                cursor.close();
            }
        }
    }

查看控制台的输出情况:
联系人列表

打开App,阅读手记
3人推荐
发表评论
随时随地看视频慕课网APP