在博客园看到一篇写的比较详细文章,转来分享下,也便于自己用到时查询
1 Intent.ACTION_MAIN
String: android.intent.action.MAIN
标识Activity为一个程序的开始。比较常用。
Input:nothing
Output:nothing
<activity android:name=".Main" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
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);
3 Intent.Action.DIAL
String: action.intent.action.DIAL
调用拨号面板
Input:电话号码。数据格式为:tel:+phone number
Output:Nothing
说明:打开Android的拨号UI。如果没有设置数据,则打开一个空的UI,如果设置数据,action.DIAL则通过调用getData()获取电话号码。
但设置电话号码的数据格式为 tel:+phone number.
Intent intent=new Intent();
intent.setAction(Intent.ACTION_DIAL); //android.intent.action.DIAL
intent.setData(Uri.parse("tel:1320010001");
startActivity(intent);
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打开拨号程序,http://www.g.cn则会打开浏览器等。
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);
转载完毕,以后有时间会加上自己的更新.
分享到:
相关推荐
3. 注册IntentFilter:为IntentFilter添加对应的ACTION,如"android.intent.action.TIME_TICK"、"android.intent.action.SCREEN_ON"和"android.intent.action.BATTERY_CHANGED"。 4. 不再需要时,记得在合适的位置...
Android 中使用 Intent 打开各种文件类型 ...在实际应用中,我们可以根据需要打开的文件类型,编写对应的 Intent 代码,并使用 startActivity 方法启动该 Intent,从而实现打开各种文件类型的功能。
本文将详细介绍如何通过两种方法实现这一目标:Intent.ACTION_GET_CONTENT 和 MediaStore。 首先,我们来看Intent.ACTION_GET_CONTENT的方式。ACTION_GET_CONTENT是Android系统提供的一种标准Intent类型,用于启动...
Intent intent = new Intent("android.intent.action.VIEW"); intent.setDataAndType(uri, "text/html"); return intent; } ``` **解析**: - `Uri.parse(param)`:解析文件路径。 - `encodedAuthority(...
Android系统会根据Intent的Action、Data、Category等属性来寻找最适合处理Intent的Activity。例如,拨打电话可以这样启动: ```java Intent call = new Intent(Intent.ACTION_CALL); call.setData(Uri.parse("tel:...
掌握Intent及其Action的使用,能帮助开发者更好地理解和构建Android应用,提高应用的交互性和功能多样性。通过实践和不断探索,开发者可以发现更多Intent的潜在用途,以满足各种应用场景的需求。
在Android开发中,Intent是一个非常核心的组件,用于在组件之间进行通信,它承载着启动一个新活动(Activity)、服务(Service)或者广播接收器(BroadcastReceiver)的任务,还可以用来在应用之间传递数据。...
如果你的应用支持接收ACTION_SEND Intent,可以通过在Manifest.xml中声明对应的Intent过滤器来实现。例如,要接收文本和图片,可以这样写: ```xml <activity android:name=".YourReceivingActivity"> <intent-...
在Android开发中,Intent是一种非常重要的机制,用于在应用程序组件之间进行通信,它可以用来启动其他组件,如Activity、...在开发过程中,合理使用Intent和IntentAction可以极大地提高应用程序的功能性和用户体验。
- 监听系统广播,如网络状态改变、电池电量变化等,这时可以发送一个隐式的Intent,定义对应的Action。 - 实现服务间的通信,通过Intent传递数据和服务之间的请求。 总结来说,Intent是Android系统中组件间交互的...
Android 则根据 Intent 的描述,找到对应的组件,将 Intent 传递给调用的组件,并完成组件的调用。Intent 在这里起着实现调用者与被调用者之间的解耦作用。 Intent 传递过程中,要找到目标消费者(另一个 Activity...
本篇文章将详细介绍Intent的各种常见用法,包括但不限于:启动浏览器、显示地图、拨打电话、发送短信/邮件等功能。 #### 基本概念 `Intent`是一种对象,它表示了一个应用程序组件的意图(Intent)或者说是请求。它...
<action android:name="android.intent.action.MEDIA_BUTTON" /> </intent-filter> <uses-permission android:name="android.permission.BIND_REMOTEVIEWS" /> ``` 然后,关于模拟媒体键盘,这通常用于测试或...
在<intent-filter>中声明一个<action android:name="com.example.ACTION_NAME"/>,就表示组件能够处理对应的Action。 2. **Category**: Category用于进一步描述Intent的性质。常见的类别有CATEGORY_DEFAULT(默认...
在Android开发中,Intent是一种强大的工具,用于在不同的组件之间传递数据和启动操作。当我们需要在应用程序中调用外部应用,如地图应用,如百度地图或高德地图,Intent是实现这一功能的关键。本篇文章将深入讲解...
这段代码创建了一个名为`AppInstallReceiver`的Broadcast Receiver,并为它指定了三个Intent Filter,分别对应ACTION_PACKAGE_ADDED、ACTION_PACKAGE_REPLACED和ACTION_PACKAGE_REMOVED。`data android:scheme=...
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <activity android:name=".Activity2" /> ``` 在Activity1的布局文件...
播放音频或视频可以使用`Intent.ACTION_VIEW`和对应的媒体类型。例如,播放MP3文件: ```java Uri uri = Uri.parse("file:///sdcard/song.mp3"); Intent it = new Intent(Intent.ACTION_VIEW); it....
<action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="http" android:host="www.example.com" /> </intent-filter> ```...