WEB开发网
开发学院手机开发Android 开发 Android SDK 1.5中文版 (Application基础) 阅读

Android SDK 1.5中文版 (Application基础)

 2010-03-11 16:00:00 来源:WEB开发网   
核心提示:Context.registerReceiver()方式注册至系统,欲更多了解如何为应用程序构建manifest文件,Android SDK 1.5中文版 (Application基础)(3),请参阅AndroidManifest.xml文件一节,1.1.4 Intent Filter(过滤器)Intent对象可以显式
Context.registerReceiver()方式注册至系统。

欲更多了解如何为应用程序构建manifest文件,请参阅AndroidManifest.xml文件一节。

1.1.4 Intent Filter(过滤器)

Intent对象可以显式指定目标组件。如果指定目标组件,Android会找到这个组件(根据manifest文件中的声明)并激活它。但如果 Intent没有指定目标组件,Android就必须找到最合适的组件来响应Intent。这个过程是通过比较Intent对象和所有潜在目标对象的 Intent Filter实现。组件的Intent Filter会通知Android它所能处理的Intent类型。和组件的其他重要信息一样,Intent Filter也是在manifest文件声明。下面是上面示例的一个扩展,向Activity添加了两个Intent Filter声明:

《?xml version=”1.0” encoding=”utf-8”?》

《manifest . . . 》

《application . . . 》

《activity android:name=”com.example.project.FreneticActivity”

android:icon=”@drawable/small_pic.png”

android:label=”@string/freneticLabel”

. . . 》

《intent-filter . . . 》

《action android:name=”android.intent.action.MAIN” /》

《category android:name=”android.intent.category.LAUNCHER” /》

《/intent-filter》

《intent-filter . . . 》

《action android:name=”com.example.project.BOUNCE” /》

《data android:type=”image/jpeg” /》

《category android:name=”android.intent.category.DEFAULT” /》

《/intent-filter》

《/activity》

. . .

《/application》

《/manifest》

示例中的第一个过滤器——行为“android.intent.action.MAIN”和类别“android.intent.category.LAUNCHER”的组合最常见的。它标明这个Activity将在应用程序启动项中显示,即用户在设备上看到的可以启动的应用程序列表。换句话说,这个Activity是应用程序的入口,是用户选择该应用程序后所看到的第一个Activity。

第二个过滤器声明了这个Activity可以在特定类型的数据上执行的操作。

组件可以有任意数量的Intent Filter,每个声明一系列不同的功能。如果没有任何过滤器,则只能被显式声明了目标组件名称的Intent激活。

对于在代码中创建并注册的广播接收器,Intent Filter直接实例化为IntentFilter对象。所有其它的过滤器都在manifest文件设定。

关于Intent Filter的其他信息,请参阅:Intent和Intent Filter。

上一页  1 2 3 

Tags:Android SDK

编辑录入:coldstar [复制链接] [打 印]
赞助商链接