android 常用action和category
来源:互联网 发布:淘宝怎样装修店铺 编辑:程序博客网 时间:2024/06/12 01:27
之前 写过一篇文章介绍常用的uri http://blog.csdn.net/iamkila/article/details/7264663
当需要在我们的应用程序上启动其他系统应用程序时 我们通常用到action 下面介绍常用到的action
虽然自己比较少用到 记录一下方便用到时可以在这里翻资料
1 Intent.ACTION_MAIN
String: android.intent.action.MAIN
标识Activity为一个程序的开始。比较常用。
Input:nothing
Output:nothing
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
2 Intent.Action_CALL
Stirng: android.intent.action.CALL
呼叫指定的电话号码。
Input:电话号码。数据格式为:tel:+phone number
Output:Nothing
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:1320010001");
startActivity(intent);
3 Intent.Action.DIAL
String: action.intent.action.DIAL
调用拨号面板
intent.setData(Uri.parse("tel:1320010001");
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
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
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打开拨号程序,http://www.g.cn则会打开浏览器等。
Uri uri=Uri.parse("geo:39.899533,116.036476"); //打开地图定位
Intent it = new Intent(Intent.ACTION_VIEW,uri);
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
Intent it = new Intent(Intent.ACTION_SENDTO, uri);
it.putExtra("sms_body", "信息内容...");
startActivity(it);
//设备中的资源(图像或其他资源)
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra("sms_body", "内容");
intent.putExtra(Intent.EXTRA_STREAM, uri);
intent.setType("image/png");
startActivity(it);
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
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);
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);
提供将要执行的action的额外信息,一般在隐式地启动activity时需要用到。常见的category如下:
- CATEGORY_ALTERNATIVE
- 设置这个activity是否可以被认为是用户正在浏览的数据的一个可选择的action
- CATEGORY_APP_BROWSER
- 和ACTION_MAIN一起使用,用来启动浏览器应用程序
- CATEGORY_APP_CALCULATOR
- 和ACTION_MAIN一起使用,用来启动计算器应用程序
- CATEGORY_APP_CALENDAR
- 和ACTION_MAIN一起使用,用来启动日历应用程序
- CATEGORY_APP_CONTACTS
- 和ACTION_MAIN一起使用,用来启动联系人应用程序
- CATEGORY_APP_EMAIL
- 和ACTION_MAIN一起使用,用来启动邮件应用程序
- CATEGORY_APP_GALLERY
- 和ACTION_MAIN一起使用,用来启动图库应用程序
- CATEGORY_APP_MAPS
- 和ACTION_MAIN一起使用,用来启动地图应用程序
- CATEGORY_APP_MARKET
- 这个activity允许用户浏览和下载新的应用程序
- CATEGORY_APP_MESSAGING
- 和ACTION_MAIN一起使用,用来启动短信应用程序
- CATEGORY_APP_MUSIC
- 和ACTION_MAIN一起使用,用来启动音乐应用程序
- CATEGORY_BROWSABLE
- 能够被浏览器安全调用的activity必须支持这个category
- CATEGORY_DEFAULT
- 设置这个activity对于默认的action是否是一个可选的
- CATEGORY_EMBED
- 可以运行在父activity容器内
- CATEGORY_HOME
- 主activity,当应用程序启动时,它是第一个显示的activity
- CATEGORY_LAUNCHER
- 应该在上层的启动列表里显示
- CATEGORY_MONKEY
- 这个activity可能被monkey或者其他的自动测试工具执行
- CATEGORY_OPENABLE
- 用来指示一个GET_CONTENT意图只希望ContentResolver.openInputStream能够打开URI
- CATEGORY_PREFERENCE
- 这个activity是一个选项卡
- CATEGORY_SAMPLE_CODE
- 作为一个简单的代码示例使用(一般情况下不使用)
- CATEGORY_SELECTED_ALTERNATIVE
- 设置这个activity是否可以被认为是用户当前选择的数据的一个可选择的action
- CATEGORY_TAB
- 想要在已有的TabActivity内部作为一个Tab使用
- CATEGORY_TEST
- 供测试使用(一般情况不使用)
- CATEGORY_UNIT_TEST
- 联合测试使用
- android 常用action和category
- 【Android学习笔记】action和category
- 自定义Action和Category
- android.intent.action.MAIN 和android.intent.category.LAUNCHER
- android.intent.action.MAIN 和android.intent.category.LAUNCHER
- android.intent.action.MAIN 和android.intent.category.LAUNCHER
- android.intent.action.MAIN 和android.intent.category.
- android.intent.action.MAIN 和android.intent.category.LAUNCHER
- android.intent.action.MAIN 和android.intent.category.LAUNCHER
- android Acitvity action,flag和category各个参数的说明
- android Acitvity action,flag和category各个参数的说明
- android Acitvity action,flag和category各个参数的说明
- android Acitvity action,flag和category各个参数的说明 .
- android Acitvity action,flag和category各个参数的说明
- Android基础:Android中的action category type
- android.intent.category.LAUNCHER 和 android:name="android.intent.action.MAIN 的作用
- android Intent的Action、Category属性
- android Intent匹配,自定义action data category
- Android布局优化之Merge Include ViewStub使用与源码分析
- Codeforces 368B
- android-Implementing Effective Navigation,Creating Swipe Views with Tabs
- C#中DataTable排序、检索、合并等操作实例
- 编程技巧之如何让一份代码多适应底层硬件
- android 常用action和category
- Linux中Mysql的卸载方法
- 全排列问题
- 下一代超大规模软件定义网络技术实践
- PHP中ob系列函数整理
- fedora下编译运行java傻瓜入门级教程
- 网络遇到“QQ能登录但是不能打开浏览器”的问题
- nyoj--127--星际之门(一)(生成树的数量)
- PopupWindow中设置一个ListView遇到的焦点问题