我需要涵盖哪些可能的意图过滤器,以确保请求图像的任何外部应用程序将在列表中看到我的应用程序?
为了澄清,我希望在执行以下操作时显示我的应用:
到目前为止,我已经介绍过:
<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应用程序并按“添加照片”,我的应用程序不会出现在选择器对话框中.我错过了哪个过滤器?
解决方法
我已经介绍了正确的intent-filters,但是Tumblr应用程序需要类别OPENABLE,所以我现在使用的是过滤器,而不是我现在使用的过滤器:
<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" />