Android Intent的几种用法详细解析
程序员文章站
2022-06-29 09:27:41
intent应该算是android中特有的东西。你可以在intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料。都指定...
intent应该算是android中特有的东西。你可以在intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料。都指定好后,只要调用startactivity(),android系统会自动寻找最符合你指定要求的应用程序,并执行该程序。
下面列出几种intent的用法
显示网页:
复制代码 代码如下:
uri uri = uri.parse("http://www.google.com");
intent it = new intent(intent.action_view,uri);
startactivity(it);
显示地图:
复制代码 代码如下:
uri uri = uri.parse("geo:38.899533,-77.036476");
intent it = new intent(intent.action_view,uri);
startactivity(it);
路径规划:
复制代码 代码如下:
uri uri = uri.parse("http://maps.google.com/maps?f=d&saddr=startlat%20startlng&daddr=endlat%20endlng&hl=en");
intent it = new intent(intent.action_view,uri);
startactivity(it);
拨打电话:
调用拨号程序
复制代码 代码如下:
uri uri = uri.parse("tel:xxxxxx");
intent it = new intent(intent.action_dial, uri);
startactivity(it);
uri uri = uri.parse("tel.xxxxxx");
intent it =new intent(intent.action_call,uri);
要使用这个必须在配置文件中加入<uses-permission id="android.permission.call_phone" />
发送sms/mms
调用发送短信的程序
复制代码 代码如下:
intent it = new intent(intent.action_view);
it.putextra("sms_body", "the sms text");
it.settype("vnd.android-dir/mms-sms");
startactivity(it);
发送短信
复制代码 代码如下:
uri uri = uri.parse("smsto:0800000123");
intent it = new intent(intent.action_sendto, uri);
it.putextra("sms_body", "the sms text");
startactivity(it);
发送彩信
复制代码 代码如下:
uri uri = uri.parse("content://media/external/images/media/23");
intent it = new intent(intent.action_send);
it.putextra("sms_body", "some text");
it.putextra(intent.extra_stream, uri);
it.settype("image/png");
startactivity(it);
发送email
复制代码 代码如下:
uri uri = uri.parse("mailto:xxx@abc.com");
intent it = new intent(intent.action_sendto, uri);
startactivity(it);
intent it = new intent(intent.action_send);
it.putextra(intent.extra_email, "me@abc.com");
it.putextra(intent.extra_text, "the email body text");
it.settype("text/plain");
startactivity(intent.createchooser(it, "choose email client"));
intent it=new intent(intent.action_send);
string[] tos={"me@abc.com"};
string[] ccs={"you@abc.com"};
it.putextra(intent.extra_email, tos);
it.putextra(intent.extra_cc, ccs);
it.putextra(intent.extra_text, "the email body text");
it.putextra(intent.extra_subject, "the email subject text");
it.settype("message/rfc822");
startactivity(intent.createchooser(it, "choose email client"));
添加附件
复制代码 代码如下:
intent it = new intent(intent.action_send);
it.putextra(intent.extra_subject, "the email subject text");
it.putextra(intent.extra_stream, "file:///sdcard/mysong.mp3");
sendintent.settype("audio/mp3");
startactivity(intent.createchooser(it, "choose email client"));
播放多媒体
复制代码 代码如下:
intent it = new intent(intent.action_view);
uri uri = uri.parse("file:///sdcard/song.mp3");
it.setdataandtype(uri, "audio/mp3");
startactivity(it);
uri uri = uri.withappendedpath(mediastore.audio.media.internal_content_uri, "1");
intent it = new intent(intent.action_view, uri);
startactivity(it);
uninstall 程序
复制代码 代码如下:
uri uri = uri.fromparts("package", strpackagename, null);
intent it = new intent(intent.action_delete, uri);
startactivity(it);
上一篇: Android获取应用程序大小的方法
下一篇: 蒸苹果的方法你知道吗,一起来看看