私たちのアプリでは、「Share via」メニューに表示したいと考えています。そこで、このインテント フィルターをアクティビティに追加しました。
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/*" />
<data android:mimeType="audio/*" />
<data android:mimeType="image/*" />
<data android:mimeType="text/*" />
<data android:mimeType="video/*" />
</intent-filter>
動作し、アプリが [共有] メニューに表示されます。
それにもかかわらず、インテント フィルターは、達成したいことを正確には実行しません。
- MIME タイプが何であれ、すべてのファイルのメニューに表示したい
- ファイルに対してのみ表示したい。これまで、ユーザーがシンプルなテキストを共有したい場合、その MIME タイプは text/plain になるため、アプリがメニューに表示されますが、それは望ましくありません。
すべてのファイルとファイルのみの正しいインテントフィルターは何ですか?
前もって感謝します。
私たちは、scheme=file と host="" または "*" を追加しようとしましたが、多くのアプリが schema=content を使用してファイルベースのコンテンツを共有しているため、機能しません。