标签:class blog code java http tar
每做一个项目都会有收获,前提是要在这个项目上付出努力的!
好吧,如今讲一下:怎么通过调用系统通讯录,当你点击联系人姓名时,跳转到向其发送短信的页面<收件人是被点中的联系人,短信已自己主动编辑>。
看看图片效果:
以下看一下具体代码:
Uri result = data.getData(); String phoneName = getPhoneContacts(result); Log.d("phone", "---------->phoneName=="+contactName); String smsContent="发给你一个时尚园APP的注冊邀请码,他们家的东西非常有品。" + ""+"\n"+strInviteCode+"(时尚园 APP下载地址http://t.so)"; sendSMS(phoneName,smsContent);
/** * 获取联系人手机号码 * @param contactId * @return */ @SuppressWarnings("deprecation") private String getPhoneContacts(Uri contactId) { Cursor cursor = null; String phoneName = "";//联系人姓名 String phoneNum = "";//联系人电话号码 String phoneID = "";//联系人ID try { // Uri uri = People.CONTENT_URI; cursor=getContentResolver().query(contactId, null, null, null, null); if (cursor.moveToNext()) { phoneName = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); phoneID=cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); Log.d("phone", "phoneName&&phoneNumber=="+phoneName+"-----"+phoneID); Cursor c=getContentResolver().query(Phone.CONTENT_URI, null, Phone.CONTACT_ID+"="+phoneID, null, null); while(c.moveToNext()){ phoneNum=c.getString(c.getColumnIndex("data1")); Log.d("phone", "phoneNumber=="+phoneNum); } } else { Toast.makeText(this, "找不到该联系人",Toast.LENGTH_LONG).show(); } } catch (Exception e) { e.printStackTrace(); } finally { if (cursor != null) { cursor.close(); } } return phoneNum; }
/** * 发送短信 * * @param smsBody */ private void sendSMS(String phoneNum, String smsBody) { Log.d("phone", "sendSMS(String phoneNum, String smsBody)=="+phoneNum); Uri smsToUri = Uri.parse("smsto:"+phoneNum); Intent intent = new Intent(Intent.ACTION_SENDTO, smsToUri); intent.putExtra("sms_body", smsBody); startActivity(intent); // Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("smsto", phoneNum, null)); // mmsintent.putExtra("sms_body", smsBody); // startActivity(mmsintent); /* 建立SmsManager对象 */ // SmsManager smsManager = SmsManager.getDefault(); // smsManager.sendTextMessage(phoneNum, null, smsBody, null, null); }
怎么调用系统通讯录并向被选中联系人发送短信,布布扣,bubuko.com
标签:class blog code java http tar
原文地址:http://www.cnblogs.com/mfrbuaa/p/3800101.html