了解android manifest.xml中的intent-filter

时间:2012-03-12 03:17:34

标签: android intentfilter

在阅读一些Android文档时,似乎intent-filter表示应用程序感兴趣的意图。在我的应用程序中,我有兴趣接收BluetoothAdapter.ACTION_STATE_CHANGED。我没有在我最好的xml文件中声明它,但在我的应用程序中,我注册了一个BroadcastReceiver过滤BluetoothAdapter.ACTION_STATE_CHANGED并且我收到的事件很好。

有人可以解释为什么我会使用intent-filter?

1 个答案:

答案 0 :(得分:1)

因此,即使应用程序尚未运行,您的应用程序也可以接收该事件。 见http://developer.android.com/guide/topics/manifest/receiver-element.html

将广播接收器(BroadcastReceiver子类)声明为应用程序的组件之一。广播接收器使应用程序能够接收由系统或其他应用程序广播的意图,即使应用程序的其他组件未运行也是如此。

有两种方法可以使系统知道广播接收器:一种是使用此元素在清单文件中声明它。另一种是在代码中动态创建接收器并使用Context.registerReceiver()方法注册它。有关动态创建的接收器的更多信息,请参阅BroadcastReceiver类描述。