5

インテント フィルターのドキュメントを確認しましたが、この特定のインテント フィルターがわかりません。

アプリを他のアプリの [共有] メニューにのみ表示したいので、ACTION_SEND の使用を検討しています。インテントのテキストが URL の場合にのみ、共有メニューに表示したい。たとえば、Android ブラウザの共有メニューから共有されるもの。URL ではなく単なるテキストの場合、アプリを共有メニューに表示したくありません。

私がこれまでに持っているものは次のとおりです。

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

ただし、これは URL だけでなく、任意のテキストを受け取ります。

ありがとう

4

1 に答える 1

1

プログラムでIntentFilterオブジェクトを作成でき、特に URI スキーマでフィルタリングできます... より多くの制御が可能です。

IntentFilter をサブクラス化すると、より多くのイベントが得られると思いましたが、「一致」のすべてのバリエーションを作成したfinalため、サブクラスでそれらをオーバーライドすることはできません。ばっ!

ユリカ!

MIME タイプの代わりにデータ「スキーム」を指定できます。「http」と「https」を尋ねるだけです(別々のインテント フィルタで?)。

<intent-filter>
  ...
  <data android:scheme="http"/>
</intent-filter>
于 2010-11-05T20:47:31.730 に答える