用于启动器和发送活动的Intent过滤器

时间:2010-11-24 10:46:30

标签: android filter android-intent

我正在尝试将我的主要活动作为启动器活动并接收发送事件。不知怎的,我似乎无法使两者同时工作。要么我在应用程序托盘中有启动器图标,要么不在图库中的图像共享菜单中。如何让两者同时工作。

使用此意图过滤器,图标位于应用程序托盘中,但不在共享菜单中。

         <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
        </intent-filter>

有了这个,我把它放在共享中但不在应用程序托盘中

        <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
            <data android:mimeType="image/*" />
        </intent-filter>

我怀疑它与数据元素有关,我试过这个但是没有用

        <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="android.intent.action.SEND" />
               <data android:mimeType="image/*">
            </action>  
        </intent-filter>

非常感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:22)

我找到了解决方案。实际上,您可以在操作中拥有多个intent-filter标记。所以正确的代码是

        <intent-filter>
            <category android:name="android.intent.category.LAUNCHER"/>
            <action android:name="android.intent.action.MAIN"/>
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.SEND"/>
            <data android:mimeType="image/*"/>
        </intent-filter>