您的位置:首页 > 移动开发 > Android开发

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

2016-04-19 15:23 573 查看
首先强调:,eclipse自带的模拟器可以跳转到电话短信界面,但是自己下载的外部模拟器就没有这两个功能,最多访问网页(这儿卡了我好久好久一直找代码错误啥的啥的最后老手的一句话解决了问题泪奔)

启动浏览器

代码与范例:

12Intent 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。

通话

代码与范例:

123Uri uri=Uri.parse("tel:138");Intent intent=new Intent(Intent.ACTION_CALL,uri);startActivity(intent);
说明:拨打号码138。需要为程序申请权限<uses-permission android:name=”android.permission.CALL_PHONE”/>。发送短信代码与范例:

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);

说明:启动短信程序。

启动通讯录

代码与范例:

12Intent 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);

说明:启动地图程序。

搜索路线

代码与范例:

12345Intent 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:xxx@example.com");

Intent
intent
=
newIntent(Intent.ACTION_SENDTO,
uri);

intent.putExtra(Intent.EXTRA_SUBJECT,
"Hello world");

intent.putExtra(Intent.EXTRA_TEXT,
"Ganbarimasu");

startActivity(intent);

说明:启动邮件程序并将收件人设为xxx@example.com,邮件主题设为Hello world,内容设为Ganbarimasu。

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

代码与范例:

123456789Intent intent=new Intent(Intent.ACTION_SEND); String[] tos={"me@example.com"}; String[]ccs={"you@example.com"}; 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文件

代码与范例:

1234Intent 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的程序。

安装程序

代码与范例:

12Uri 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);

说明:进入设定程序。

启动电子市场

代码与范例:

123Uri 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);

说明:启动图库并中选择并获取一张图片,返回原程序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: