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

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

转载自:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=237224&reltid=34&pre_thread_id=0&pre_pos=8&ext=

启动浏览器

?
代码片段,双击复制
01
02
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse( "http://www.google.com" ));  
startActivity(intent);


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

启动拨号程序
?
代码片段,双击复制
01
02
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse( "tel:186" ));
startActivity(intent);


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

通话
?
代码片段,双击复制
01
02
03
Uri uri=Uri.parse( "tel:186" );
Intent intent= new Intent(Intent.ACTION_CALL,uri);
startActivity(intent);

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

发送短信
?
代码片段,双击复制
01
02
03
04
Uri smsUri = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, smsUri);
intent.setType( "vnd.android-dir/mms-sms" );
startActivity(intent);


说明:启动短信程序。

启动通讯录
?
代码片段,双击复制
01
02
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse( "content://contacts/people/1" ));
startActivity(intent);


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

启动地图程序(Google Maps等)
?
代码片段,双击复制
01
02
03
Uri mapUri = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, mapUri);
startActivity(intent);


说明:启动地图程序。

搜索路线
?
代码片段,双击复制
01
02
03
04
05
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并搜索路线,具体的方法另外补充。

启动邮件程序
?
代码片段,双击复制
01
02
03
04
05
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。

启动邮件程序并添加多个收件人
?
代码片段,双击复制
01
02
03
04
05
06
07
08
09
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" ));


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

启动邮件程序并添加附件
?
代码片段,双击复制
01
02
03
04
05
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文件
?
代码片段,双击复制
01
02
03
04
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri uri =Uri.parse( "file:///sdcard/song.mp3" );
intent.setDataAndType(uri, "audio/mp3" );
startActivity(intent);


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

卸载程序
?
代码片段,双击复制
01
02
03
Uri uri =Uri.fromParts( "package" , strPackageName, null );   
Intent intent = newIntent(Intent.ACTION_DELETE, uri);   
startActivity(intent);


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

安装程序
?
代码片段,双击复制
01
02
Uri installUri = Uri.fromParts( "package" ,strPackageName, null );
returnIt = newIntent(Intent.ACTION_PACKAGE_ADDED, installUri);


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

启动设置
?
代码片段,双击复制
01
02
Intent intent= new Intent( "android.settings.SETTINGS" );
startActivity(intent);



说明:进入设定程序。

启动电子市场
?
代码片段,双击复制
01
02
03
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。

启动电子市场并进入程序信息界面
?
代码片段,双击复制
01
02
03
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)中选择并获取一张图片
?
代码片段,双击复制
01
02
03
04
Intent intent = new Intent();
intent.setType( "image/*" );
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent, 11 );


你可能感兴趣的:(JAVA学习,手机)