Android,开启通讯录

来源:互联网 发布:软件专利实例 编辑:程序博客网 时间:2024/06/03 10:23

开启通讯录

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);

startActivityForResult(intent, 1);


通讯录关闭回调

获取电话号码

@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
 super.onActivityResult(reqCode, resultCode, data);
 
 switch (reqCode) {
   case (1) :
     if (resultCode == Activity.RESULT_OK) {
       Uri contactData = data.getData();
       Cursor c =  managedQuery(contactData, null, null, null, null);
       if (c.moveToFirst()) {
         String name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
         String hasPhone = c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));
        String id= c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));
         String phoneNumber = null;
         if ( hasPhone.equalsIgnoreCase("1")) {
             hasPhone = "true";
         } else {
             hasPhone = "false" ;
         }
         if (Boolean.parseBoolean(hasPhone)) {
         Cursor dataCursor = getContentResolver().query(Uri.parse("content://com.android.contacts/data"), new String[] {
"mimetype", "data1" }, "raw_contact_id=?",
new String[] { id }, null);
while (dataCursor.moveToNext()) {
if("vnd.android.cursor.item/phone_v2".equals( dataCursor.getString(0))){
if(phoneNumber==null)
phoneNumber=dataCursor.getString(1);
}
}
phoneNo.setText(phoneNumber);
         }
       }
     }
     break;
 }
}



发送短信

SmsManager smsManager = SmsManager.getDefault();
TelephonyManager phoneMgr=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
smsManager.sendTextMessage(phoneNo.getText().toString().trim(), phoneMgr.getLine1Number(),"share message我有一笔交易要支付100万", null, null);

调用系统发送短信意图

Intent msgintent = new Intent("android.intent.action.SENDTO");
msgintent.addCategory(Intent.CATEGORY_DEFAULT);
msgintent.putExtra("sms_body", "dfadfadfa");
msgintent.setData(Uri.parse("sms:10086"));
startActivity(msgintent);


0 0
原创粉丝点击