您的位置:首页 > 移动开发 > Android开发

Android 获取联系人电话号码

2016-06-15 18:21 393 查看
<!-- 读取联系人权限 -->   <uses-permission android:name="android.permission.READ_CONTACTS"/>  <!-- 拨打电话权限 -->  <uses-permission android:name="android.permission.CALL_PHONE"/>  
private final int SEND_SMS_TYPE = 222
private TextView phoneEd;
//发起请求进入联系人
Intent i = new Intent();
i.setAction(Intent.ACTION_PICK);
i.setData(ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(i, SEND_SMS_TYPE);
//获取返回的来联系人电话
 @Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {switch (requestCode) {case SEND_SMS_TYPE:switch (requestCode) {case SEND_SMS_TYPE:if (data == null) {return;}String phoneNumber = null;Uri contactData = data.getData();if (contactData == null) {return;}ContentResolver resolver = RechargeActivity.this.getContentResolver();Cursor cursor = resolver.query(contactData, null, null, null, null);if (cursor.moveToFirst()) {//                  String name = cursor.getString(cursor//                          .getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));String hasPhone = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));String id = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));if (hasPhone.equalsIgnoreCase("1")) {hasPhone = "true";} else {hasPhone = "false";}if (Boolean.parseBoolean(hasPhone)) {Cursor phones = resolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = " + id, null, null);while (phones.moveToNext()) {phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));phoneEd.setText(phoneNumber);}phones.close();}}//                sendAdrress = phoneNumber;//                SEND_TYPE = SEND_SMS_TYPE;//                send_text_SMS.setText("发送短信" + " : " + phoneNumber);break;}break;}super.onActivityResult(requestCode, resultCode, data);}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: