android studio开发取读手机通讯录
时间: 2023-05-13 11:02:55 浏览: 552
在Android Studio开发中,要取读手机通讯录可以通过以下步骤实现:
1、在AndroidManifest文件中进行权限申请:
<uses-permission android:name="android.permission.READ_CONTACTS" />
2、在app的build.gradle文件中添加以下依赖:
implementation 'com.android.support:design:28.0.0'
3、在代码中获取通讯录数据:
- 首先配置需要获取到的信息字段
String[] PROJECTION = new String[]{
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER
};
- 创建ContentResolver对象,扫描系统联系人数据库获取指定字段的信息,并返回一个Cursor对象
ContentResolver cr = getContentResolver();
Cursor cursor = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, PROJECTION, null, null, null);
4、将获取到的数据通过适配器展示出来
代码示例:
```
ArrayList<String> list = new ArrayList<>();
if ( cursor != null ) {
while ( cursor.moveToNext() ) {
String number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
if (list != null) {
list.add(name + "\n" + number);
}
}
cursor.close();
}
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, list);
listView.setAdapter(adapter);
```
这样,就可以在应用中成功地取读并显示手机通讯录了。
阅读全文