如何通过intent-filter打开Activity以及intent-filter有什么用?

How to open Activity via intent-filter and what is the use of intent-filter?

我正在处理我知道如何通过 intent 打开活动的活动,但我想知道如何通过 intent-filter 打开 activity 以及 intent-filter 在打开活动中的作用是什么.

IntentFilter 与 BroadcastReceivers 一起使用。 当任何符合过滤器的意图到达系统时,BroadcastReceiver 就会被激活。

这通常用于在活动之间、不同应用程序之间或从服务器到应用程序之间发送消息。

参见 BroadcastReceiver 文档: http://developer.android.com/reference/android/content/BroadcastReceiver.html

或本教程: http://www.vogella.com/tutorials/AndroidBroadcastReceiver/article.html

Activity 甚至可以通过 IntentFilter 启动 试试这个

基本上当你安装你的应用程序时,Android 系统会注册 activity 和相应的操作,当你声明你的 activity 和自定义操作时,Android 系统存储activity 与相应的 activity。当您使用自定义操作启动意图时。如果只有一个 activity 匹配它,系统将找到接收 activity 并启动它,如果有多个 Activity 接收该动作,系统将要求用户选择哪个activity 完成动作。

manifest 中声明 activity

       <activity
            android:name=".YourActivity" >
            <intent-filter>
                <action android:name="your.custom.ACTION" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity> 

然后您可以通过调用

来启动此 activity
startActivity(new Intent("your.custom.ACTION"));