Android Activity---使用Intent过滤器

本文详细解释了Android应用中Activity如何通过Intent过滤器来激活和响应不同的Intent动作,包括主入口配置和自定义Intent过滤器的用法。
<Activity>元素中也能使用<intent-filter>元素来指定各种Intent过滤器,以便声明其他应用程序组件可以怎样激活它。

当你使用AndroidSDK工具创建一个新的应用程序是,自动创建的那个Activity包含了一个声明Activity响应“Main”动作的Intent过滤器,并且这个过滤器被放在“Launcher”分类中。过滤器声明如下:

<activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
<action>元素指定了这是应用程序的主入口。<category>元素指定了这个Activity应该被列在系统的应用装载器中(允许用户加载这个Activity)

如果你打算让你的应用程序自包含,并且不允许其他应用成来激活它的Activity,那么不需要任何其他的Intent过滤器,只需要向前面例子那样给Activity配置“main”动作和“launcher”分类就可以了。不想对其他应用程序有效的Activity不应该有Intent过滤器,并且你可以在自己的应用程序中启动。

但是,如果你想让你的Activity响应来自其他应用程序(包括应用程序自己)的隐含的Intent,那么你就必须给你的Activity定义额外的Intent过滤器。对于你想响应的每种Intent类型,你必须在<intent-filter>元素中包含一个<action>元素,并且可选择的包含<category>和<data>元素。这些元素指定了你的Activity能够响应那种类型的Intent。

关于Activity能够响应的Intent的更多信息,请看Intents and Intent Filters文档。


注:本人转载系个人觉得翻译的很好,值得收藏,且自己回头看着方便。

如有兴趣请访问作者官方博客http://blog.youkuaiyun.com/FireOfStar


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值