/var/log/messages

debugging with sixth sense

共有 Intent な備忘

確か URL 共有だったよな、と微妙なことを言いつつ情報取り纏め。

ブラウザのページ共有な intent は

  • action が Intent.ACTION_SEND
  • category は DEFAULT で良いみたい
  • data android:mimeType で “text/plain” を指定

というカンジらしい。intent-filter な記述としては以下なのか。

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

あとは URL 取り出しなんですが onCreate あたりで

TextView tv = (TextView)findViewById(R.id.url);
if (Intent.ACTION_SEND.equals(getIntent().getAction())) {
    CharSequence uri = getIntent().getExtras().getCharSequence(Intent.EXTRA_TEXT);
    if (uri != null) {
        tv.setText((String)uri);
    }
}

みたいなカンジで良いのかどうか。確認してみます。

おわりに

無問題でした。そして以下エントリに感謝を。

Comments