安卓也有发送邮件功能,同样是调取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() ;
}
}
}
实现效果就是调用你的联系人一样的效果