Android跳转到通讯录获取用户名称和手机号码
来源:互联网 发布:泛型 java 编辑:程序博客网 时间:2024/05/17 05:14
1、跳转到系统的联系人页面
Uri uri = Uri.parse("content://contacts/people");
Intent intent = new Intent(Intent.ACTION_PICK, uri);
startActivityForResult(intent, 0);
2、利用回调函数
/*
* 跳转联系人列表的回调函数
* */
@Override
protected
void
onActivityResult(
int
requestCode,
int
resultCode, Intent data) {
switch
(requestCode){
case
0
:
if
(data==
null
)
{
return
;
}
//处理返回的data,获取选择的联系人信息
Uri uri=data.getData();
String[] contacts=getPhoneContacts(uri);
et_name.setText(contacts[
0
]);
et_tele.setText(contacts[
1
]);
break
;
}
super
.onActivityResult(requestCode, resultCode, data);
}
//其中getPhoneContacts(uri)方法,因为手机的联系人和手机号并不再同一个数据库中,所以我们需要分别做处理
private
String[] getPhoneContacts(Uri uri){
String[] contact=
new
String[
2
];
//得到ContentResolver对象
ContentResolver cr = getContentResolver();
//取得电话本中开始一项的光标
Cursor cursor=cr.query(uri,
null
,
null
,
null
,
null
);
if
(cursor!=
null
)
{cursor.moveToFirst();
//取得联系人姓名
int
nameFieldColumnIndex=cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
contact[
0
]=cursor.getString(nameFieldColumnIndex);
//取得电话号码
String ContactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null
,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID +
"="
+ ContactId,
null
,
null
);
if
(phone !=
null
){
phone.moveToFirst();
contact[
1
] = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
phone.close();
cursor.close();
}
else{return
null
;
}
return
contact;
}
1 0
- Android跳转到通讯录获取用户名称和手机号码
- Android跳转到通讯录获取用户名称和手机号码
- Android跳转到通讯录获取用户名称和手机号码
- Android跳转到通讯录获取用户名称和手机号码
- Android跳转到通讯录获取用户名称和手机号码
- Android跳转到通讯录获取用户名称和手机号码的实现思路
- android:获取手机号码和姓名实现通讯录
- android:获取手机号码和姓名实现通讯录
- android:获取手机号码和姓名实现通讯录
- android:获取手机号码和姓名实现通讯录
- Android 内容访问者 和 跳转到通讯录页面获取信息
- android 跳转到系统通讯录
- 跳转到已安装的apk&&获取Android应用包名package和入口activity名称
- android 跳转到通讯录并获取展示到页面 及android联系人信息获取
- Android跳转到系统通讯录新增和修改联系人
- Android中 获取手机通讯录和手机机主手机号码——诺诺"涂鸦"记忆
- Android跳转到通讯录选择联系人
- Android中跳转到手机通讯录并返回电话和姓名
- Unity说明文档翻译-Asset Workflow
- 如何参与linux 内核开发
- VMware虚拟机nat模式连不上网
- 模方程
- 自定义VIEW②绘制流程
- Android跳转到通讯录获取用户名称和手机号码
- JavaSE 学习参考:二维数组定义
- Leetcode刷题记——Trapping Rain Water(捕获雨水)
- 通过ICE接口对hbase进行文件操作
- 微信公众号文章采集 爬取微信文章 采集公众号的阅读数和点赞数?
- OSPF的LSA类型详解
- 小白初用Redis
- iOS的主要框架介绍
- 《MySQL必知必会》学习笔记十六(事务处理)------掌握部分