Android邮件发送跟调用联系人(4)
Android邮件发送和调用联系人(4)
安卓也有发送邮件功能,同样是调取gmail程序进行发送邮件功能
跟之前的跳转程序差不多,代码大概也是类似:
Intent emailIntent = new Intent(Intent.ACTION_SEND) ; emailIntent.setType("plain/text") ; // 设置类型 String address[] = new String[] {"429899791@qq.com"} ; // 邮件地址 String subject = "我要交作业" ;//邮件主题 String content = "第一次数据库作业" ;//邮件内容 emailIntent.putExtra(Intent.EXTRA_EMAIL, address) ;//邮件地址 emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject) ; emailIntent.putExtra(Intent.EXTRA_TEXT, content) ; MyIntentCaseDemo.this.startActivity(emailIntent) ; // 执行跳转
需要注意的是很多人手机root掉以后,发送邮件的app都被刷掉了,因此可能无法运行此程序。
接下来我们读取通讯录,与之前不同的是不同listview读取了,直接调用联系人。
代码如下:
public class MainActivity extends Activity { private static final int PICK_CONTACT_SUBACTIVITY=1;//定义标识位 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Uri uri=Uri.parse("content://contacts/people"); Intent intent=new Intent(Intent.ACTION_PICK,uri); super.startActivityForResult(intent, PICK_CONTACT_SUBACTIVITY); } protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); switch(requestCode) { case PICK_CONTACT_SUBACTIVITY: Uri ret=data.getData();//单个数据uri String phoneSelection=ContactsContract.CommonDataKinds.Phone.CONTACT_ID +"=?";//设置查询条件 String[] phoneSelectionArgs = { String.valueOf(ContentUris .parseId(ret)) }; // 返回的ID Cursor c = super.managedQuery( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, phoneSelection, phoneSelectionArgs, null);//查询全部手机号码 StringBuffer buf = new StringBuffer(); buf.append("电话号码是:"); for (c.moveToFirst() ; !c.isAfterLast() ; c.moveToNext()) { buf.append( c.getString(c .getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER))) .append("、"); } Toast.makeText(this, buf, Toast.LENGTH_LONG).show() ; } } }
实现效果就是调用你的联系人一样的效果