Android中Intent有哪些作用,Android开发中Intent.Action各种常见的作用汇总

施辉
2023-12-01

本文介绍android中intent的各种常见作用。

1 intent.action_main

string: android.intent.action.main

标识activity为一个程序的开始。比较常用。

input:nothing

output:nothing

2 intent.action_call

stirng: android.intent.action.call

呼叫指定的电话号码。

input:电话号码。数据格式为:tel:+phone number

output:nothing

intent intent=new intent();

intent.setaction(intent.action_call);

intent.setdata(uri.parse("tel:1320010001");

startactivity(intent);

使用intent.action_call时,必须在androidmanifest.xml中添加已获取拨打电话的权限。intent.action_call与intent.action_dialog不同,intent.action_dialog只是调用拨号键盘,将电话号码复制上去,而intent.action_call则是直接拨打电话

3 intent.action.dial

string: action.intent.action.dial

调用拨号面板

intent intent=new intent();

intent.setaction(intent.action_dial); //android.intent.action.dial

intent.setdata(uri.parse("tel:1320010001");

startactivity(intent);

input:电话号码。数据格式为:tel:+phone number

output:nothing

说明:打开android的拨号ui。如果没有设置数据,则打开一个空的ui,如果设置数据,action.dial则通过调用getdata()获取电话号码。

但设置电话号码的数据格式为 tel:+phone number.

4 intent.action.all_apps

string: andriod.intent.action.all_apps

列出所有的应用。

input:nothing.

output:nothing.

5 intent.action_answer

stirng:android.intent.action.answer

处理呼入的电话。

input:nothing.

output:nothing.

6 intent.action_attach_data

string: android.action.attch_data

别用于指定一些数据应该附属于一些其他的地方,例如,图片数据应该附属于联系人

input: data

output:nothing

7 intent.action_bug_report

string: android.intent.action.bug_report

显示dug报告。

input:nothing

output:nothing

8 intent.action_call_button

string: android.action.intent.call_button.

相当于用户按下“拨号”键。经测试显示的是“通话记录”

input:nothing

output:nothing

intent intent = new intent(intent.action_call_button);

startactivity(intent);

9 intent.action_chooser

string: android.intent.action.chooser

显示一个activity选择器,允许用户在进程之前选择他们想要的,与之对应的是intent.action_get_content.

10. intent.action_get_content

string: android.intent.action.get_content

允许用户选择特殊种类的数据,并返回(特殊种类的数据:照一张相片或录一段音)

input: type

output:uri

int requestcode = 1001;

intent intent = new intent(intent.action_get_content); // "android.intent.action.get_content"

intent.settype("image/*"); // 查看类型,如果是其他类型,比如视频则替换成 video/*,或 */*

intent wrapperintent = intent.createchooser(intent, null);

startactivityforresult(wrapperintent, requestcode);

11 intent.action_view

string android.intent.action.view

用于显示用户的数据。

比较通用,会根据用户的数据类型打开相应的activity。

比如 tel:13400010001打开拨号程序,则会打开浏览器等。

uri uri = uri.parse("http://www.google.com"); //浏览器

uri uri =uri.parse("tel:1232333"); //拨号程序

uri uri=uri.parse("geo:39.899533,116.036476"); //打开地图定位

intent it = new intent(intent.action_view,uri);

startactivity(it);

//播放视频

intent intent = new intent(intent.action_view);

uri uri = uri.parse("file:///sdcard/media.mp4");

intent.setdataandtype(uri, "video/*");

startactivity(intent);

//调用发送短信的程序

intent it = new intent(intent.action_view);

it.putextra("sms_body", "信息内容...");

it.settype("vnd.android-dir/mms-sms");

startactivity(it);

12 intent.action_sendto

string: android.intent.action.sendto

说明:发送短信息

//发送短信息

uri uri = uri.parse("smsto:13200100001");

intent it = new intent(intent.action_sendto, uri);

it.putextra("sms_body", "信息内容...");

startactivity(it);

//发送彩信,设备会提示选择合适的程序发送

uri uri = uri.parse("content://media/external/images/media/23");

//设备中的资源(图像或其他资源)

intent intent = new intent(intent.action_send);

intent.putextra("sms_body", "内容");

intent.putextra(intent.extra_stream, uri);

intent.settype("image/png");

startactivity(it);

//email

intent intent=new intent(intent.action_send);

string[] tos={"android1@163.com"};

string[] ccs={"you@yahoo.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"));

13 intent.action_get_content

//选择图片 requestcode 返回的标识

intent intent = new intent(intent.action_get_content); //"android.intent.action.get_content"

intent.settype(contenttype); //查看类型 string image_unspecified = "image/*";

intent wrapperintent = intent.createchooser(intent, null);

((activity) context).startactivityforresult(wrapperintent, requestcode);

//添加音频

intent intent = new intent(intent.action_get_content);

intent.settype(contenttype); //string video_unspecified = "video/*";

intent wrapperintent = intent.createchooser(intent, null);

((activity) context).startactivityforresult(wrapperintent, requestcode);

//拍摄视频

int durationlimit = getvideocapturedurationlimit(); //systemproperties.getint("ro.media.enc.lprof.duration", 60);

intent intent = new intent(mediastore.action_video_capture);

intent.putextra(mediastore.extra_video_quality, 0);

intent.putextra(mediastore.extra_size_limit, sizelimit);

intent.putextra(mediastore.extra_duration_limit, durationlimit);

startactivityforresult(intent, request_code_take_video);

//视频

intent intent = new intent(intent.action_get_content);

intent.settype(contenttype); //string video_unspecified = "video/*";

intent wrapperintent = intent.createchooser(intent, null);

((activity) context).startactivityforresult(wrapperintent, requestcode);

//录音

intent intent = new intent(intent.action_get_content);

intent.settype(contenttype.audio_amr); //string audio_amr = "audio/amr";

intent.setclassname("com.android.soundrecorder",

"com.android.soundrecorder.soundrecorder");

((activity) context).startactivityforresult(intent, requestcode);

//拍照 request_code_take_picture 为返回的标识

intent intent = new intent(mediastore.action_image_capture); //"android.media.action.image_capture";

intent.putextra(mediastore.extra_output, mms.scrapspace.content_uri); // output,uri.parse("content://mms/scrapspace");

startactivityforresult(intent, request_code_take_picture);

完毕。^_^

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对萬仟网的支持。如果你想了解更多相关内容请查看下面相关链接

 类似资料: