Androidを使用して、デフォルトのブラウザで電子メールアドレスをクリックすると、Gmail(組み込みの電子メールクライアント)とK-9(別の電子メールアプリケーション)のメニューリストがポップアップ表示されます。
このリストに表示されるAndroidアプリケーションを追加したいと思います。これは可能ですか?どうすればこれを行うことができますか?
Androidを使用して、デフォルトのブラウザで電子メールアドレスをクリックすると、Gmail(組み込みの電子メールクライアント)とK-9(別の電子メールアプリケーション)のメニューリストがポップアップ表示されます。
このリストに表示されるAndroidアプリケーションを追加したいと思います。これは可能ですか?どうすればこれを行うことができますか?
このインテントフィルターをマニフェストのアクティビティに追加します。
<intent-filter>
<action android:name="android.intent.action.SENDTO" />
<data android:scheme="mailto" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<data android:mimeType="*/*" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<data android:mimeType="*/*" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="mailto" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
これを作成する必要があります。これには、誰かが電子メールを送信しようとしていることをシステムが通知したときにトリガーされるIntentFilter
Javaコードと、アクションをサブスクライブする場所への変更の両方が必要です。必要なインテントフィルターを説明するSO投稿は次のとおりです。送信されたメールアドレスをリッスンするandroidintent-filter?Activity
AndroidManifest
Intent
Activity
これらをのエントリに追加するAndroidManifest
と、誰かがメールをクリックするとアプリが表示されます。誰かがそれをクリックすると、Activity
インテントからデータを引き出すことについて読みたいと思う特定のものが開きます。具体的には、エクストラからhttp://developer.android.com/reference/android/content/Intent.html#EXTRA_EMAILを引き出します。
ここでintent-filterについて読んでください:
https ://developer.android.com/training/sharing/receive.html