什么意图过滤器必须我的应用程序涵盖出现在选配时再审从外部应用程序的图像?(What intent-f

2019-06-17 23:00发布

什么是可能的意图过滤器,我需要支付,以确保任何外部应用程序请求的图像会看到我的应用程序列表中?

为了澄清,我想我的应用程序执行以下操作时显示:

到目前为止,我已经介绍了:

<intent-filter>
    <action android:name="android.intent.action.PICK" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>
<intent-filter>
    <action android:name="android.intent.action.GET_CONTENT" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>

但是,如果使用的tumblr应用程序,并按下“添加照片”,我的应用程序不会出现在选择器对话框。 其中滤波器我错过了吗?

Answer 1:

我已经覆盖了正确的意图过滤器,但是的tumblr应用程序需要的类打开的,所以不是我现在,我使用的过滤器:

<intent-filter>
    <action android:name="android.intent.action.PICK" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>
<intent-filter>
    <action android:name="android.intent.action.GET_CONTENT" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.OPENABLE" />
    <data android:mimeType="image/*" />
</intent-filter>

只有加入一行:

<category android:name="android.intent.category.OPENABLE" />


Answer 2:

有些应用程序可以指定应用程序打开,有些应用程序已经设置默认的应用程序打开。



Answer 3:

份额功能使用下面的意图过滤器

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

请记住,这并不意味着一个应用程序请求的相片,但是它要发送一个地方。



Answer 4:

使用此<intent-filter>

<intent-filter
    android:icon="@drawable/icon"
    android:label="Share to my app">
    <action android:name="android.intent.action.SEND" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>


文章来源: What intent-filters must my app cover to appear in chooser when requestion an image from an external app?