私たちのアプリでは、[共有]メニューに表示します。そこで、このインテントフィルターをアクティビティに追加しました:ファイルのインテントフィルタ
<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になるので、私たちのアプリはメニューに表示され、私たちはそれを望んでいません。
正しいインテントフィルタは、すべてのファイルとファイルのみに適用されますか?
ありがとうございます。
我々は=「」または「*」スキーム=ファイルとホストを追加しようとしましたが、それは、多くのアプリは、ファイルベースのコンテンツを共有する仕組み=コンテンツを使用動作しません。
古い質問を残して申し訳ありません、カテゴリ "android.intent.category.OPENABLE"を使ってみました。動作しているようです。 ChromeからWebページを共有することは表示されず、Solid Explorerからファイルを共有することが示されます。これを使用するのが安全か、それともスキームではより良いですか? –
@Giorgio Aresu、あなたが何を求めているのかははっきりしない。両方のオプションを試しましたか? – Snicolas
私は両方を試しました。 Answerで説明したスキームでは、私は共有時に表示さえしません。カテゴリとして_openable_はファイルマネージャからファイルを共有していますが、ブラウザからプレーンテキストを共有しません。これは私が欲しいものです:ファイル(すべてのMIMEタイプ)、ファイル(テキストではない)、まさにあなたの質問で欲しいものです。さらなるテストでは、いくつかのアプリケーション(Photoshop express、gallery)が、urisをプレーンテキストとして、または「画像:3710」のような形式で共有することが判明しました。私はそれを把握しようとしています... –