手机APP 将信息导入通讯录,如何访问调用到手机通讯录。将信息导入 谢谢!我QQ 805393206
1条回答 默认 最新
- qq_28514109 2017-04-10 08:52关注
package com.example.test;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.app.Activity;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.view.View;
import android.widget.EditText;public class MainActivity extends Activity {
// 声明文本框
private EditText et_mobile;
// 声明姓名,电话
private String username, usernumber;@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 根据Id获得文本框 et_mobile = (EditText) this.findViewById(R.id.mobileTel); } public void getTelClick(View v) { startActivityForResult(new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI), 0); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == Activity.RESULT_OK) { // ContentProvider展示数据类似一个单个数据库表 // ContentResolver实例带的方法可实现找到指定的ContentProvider并获取到ContentProvider的数据 ContentResolver reContentResolverol = getContentResolver(); // URI,每个ContentProvider定义一个唯一的公开的URI,用于指定到它的数据集 Uri contactData = data.getData(); // 查询就是输入URI等参数,其中URI是必须的,其他是可选的,如果系统能找到URI对应的ContentProvider将返回一个Cursor对象. Cursor cursor = managedQuery(contactData, null, null, null, null); cursor.moveToFirst(); // 获得DATA表中的名字 username = cursor.getString(cursor .getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); // 条件为联系人ID String contactId = cursor.getString(cursor .getColumnIndex(ContactsContract.Contacts._ID)); // 获得DATA表中的电话号码,条件为联系人ID,因为手机号码可能会有多个 Cursor phone = reContentResolverol.query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null); while (phone.moveToNext()) { usernumber = phone .getString(phone .getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); et_mobile.setText(usernumber + " (" + username + ")"); } } }
}
解决 无用评论 打赏 举报
悬赏问题
- ¥15 R语言Rstudio突然无法启动
- ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
- ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
- ¥15 用windows做服务的同志有吗
- ¥60 求一个简单的网页(标签-安全|关键词-上传)
- ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
- ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
- ¥100 为什么这个恒流源电路不能恒流?
- ¥15 有偿求跨组件数据流路径图
- ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值