Android中通过Intent调用其他应用的方法(转)

启动浏览器

代码与范例:

1
2
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));  
startActivity(intent);

说明:启动浏览器并前往http://www.google.com 。

启动拨号程序

代码与范例:

1
2
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:138"));
startActivity(intent);

说明:启动拨号程序并输入号码138。

通话

代码与范例:

1
2
3
Uri uri=Uri.parse("tel:138");
Intent intent=new Intent(Intent.ACTION_CALL,uri);
startActivity(intent);

说明:拨打号码138。需要为程序申请权限

发送短信

代码与范例:

1
2
3
4
Uri smsUri = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, smsUri);
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);

说明:启动短信程序。

启动通讯录

代码与范例:

1
2
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("content://contacts/people/1"));
startActivity(intent);

说明:启动同学录的某一条目。

启动地图程序(Google Maps等)

代码与范例:

1
2
3
Uri mapUri = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, mapUri);
startActivity(intent);

说明:启动地图程序。

搜索路线

代码与范例:

1
2
3
4
5
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setClassName("com.google.android.apps.maps","com.google.android.maps.MapsActivity");
intent.setData(Uri.parse("http://maps.google.com/maps?myl=saddr&daddr=&dirflg=d"));
startActivity(intent);

说明:启动Google Maps并搜索路线,具体的方法另外补充。

启动邮件程序

代码与范例:

1
2
3
4
5
Uri uri =Uri.parse("mailto:[email protected]");
Intent intent = newIntent(Intent.ACTION_SENDTO, uri);
intent.putExtra(Intent.EXTRA_SUBJECT, "Hello world");
intent.putExtra(Intent.EXTRA_TEXT, "Ganbarimasu");
startActivity(intent);

说明:启动邮件程序并将收件人设为[email protected],邮件主题设为Hello world,内容设为Ganbarimasu。

启动邮件程序并添加多个收件人

代码与范例:

1
2
3
4
5
6
7
8
9
Intent intent=new Intent(Intent.ACTION_SEND);     
String[] tos={"[email protected]"};     
String[]ccs={"[email protected]"};     
intent.putExtra(Intent.EXTRA_EMAIL, tos);     
intent.putExtra(Intent.EXTRA_CC, ccs);     
intent.putExtra(Intent.EXTRA_TEXT, "The email body text");     
intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");     
intent.setType("message/rfc822");     
startActivity(Intent.createChooser(intent,"Choose Email Client"));

说明:启动邮件程序并设置为发送给多个收件人。

启动邮件程序并添加附件

代码与范例:

1
2
3
4
5
Intent intent = newIntent(Intent.ACTION_SEND);   
intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");    
intent.putExtra(Intent.EXTRA_STREAM,"file:///sdcard/mysong.mp3);   
sendIntent.setType("audio/mp3");   
startActivity(Intent.createChooser(intent,"Choose Email Client"));

说明:启动邮件程序并添加附件。

播放MP3文件

代码与范例:

1
2
3
4
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri uri =Uri.parse("file:///sdcard/song.mp3");
intent.setDataAndType(uri,"audio/mp3");
startActivity(intent);

说明:启动音乐程序并播放MP3歌曲。

卸载程序

代码与范例:

1
2
3
Uri uri =Uri.fromParts("package", strPackageName, null);   
Intent intent = newIntent(Intent.ACTION_DELETE, uri);   
startActivity(intent);

说明:卸载包名为strPackageName的程序。

安装程序

代码与范例:

1
2
Uri installUri = Uri.fromParts("package",strPackageName, null);
returnIt = newIntent(Intent.ACTION_PACKAGE_ADDED, installUri);

说明:安装包名为strPackageName的程序。

启动设置

代码与范例:

1
2
Intent intent=new Intent("android.settings.SETTINGS");
startActivity(intent);

说明:进入设定程序。

启动电子市场

代码与范例:

1
2
3
Uri uri=Uri.parse("market://search?q=pname:org.breezesoft.techolite");
Intent intent=new Intent(Intent.ACTION_VIEW,uri);
startActivity(intent);

说明:以包名org.breezesoft.techolite为条件启动Android Market。

启动电子市场并进入程序信息界面

代码与范例:

1
2
3
Uri uri = Uri.parse("market://details?id=org.breezesoft.techolite");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

说明:启动Android Market并进入包名为org.breezesoft.techolite的程序的详细信息界面。

从图库(Gallery)中选择并获取一张图片

代码与范例:

1
2
3
4
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent, 11);

说明:启动图库并中选择并获取一张图片,返回原程序。

你可能感兴趣的:(android)