[Android] アプリに mailer 呼び出しを設定する

ユーザーからの質問をメールで送ってもらったりしたいときに、アプリの中からスマホのメーラーを呼び出す便利な仕組みです。
 
 

1x1.trans - [Android] アプリに mailer 呼び出しを設定する
1x1.trans - [Android] アプリに mailer 呼び出しを設定する

Android Studio
2021.1.1

 




メールを作成するIntent

 
はっきりとしたドキュメントはないのですが、API29というかAndroid 10からIntentの扱いが大きくかわったようです。このメーラーもIntentで簡単にメールを送信する方法なので以前の方法とは異なっています。
 

 

メーラー起動

 
Intentのインスタンスを生成して

  1. ACTION
    • ACTION_SENDTO(添付ファイルがない場合)
    • ACTION_SEND(添付ファイルが 1 つある場合)
    • ACTION_SEND_MULTIPLE(添付ファイルが複数ある場合)
  2. setData
  3. putExtra

これらを設定して
startActivity(intent)

ACTION_SENDTOのケース


まとめると
 
MainActivity.java


 
別段変わり種はないですが、一応レイアウトです
activity_main.xml


 
strings.xml


 

インテントフィルタ
AndroidManifest.xml


CCやBCCを入れたい場合は、
Intent.EXTRA_CC
Intent.EXTRA_BCC
を使います。

 

メールに画像を添付

 
画像を添付するケースですが、
Intent.ACTION_OPEN_DOCUMENT
を使ってフォトから画像を選択します。

cat33 00 100x100 - [Android] アプリに mailer 呼び出しを設定する
デフォルトでAndroidにインストールされているギャラリーあるいはフォトから画像を取得するにはSAF(Storage Access Fra...

その画像のUriをメーラーに設定してメールを送信します。尚、Intent.ACTION_SEND を使うのでメーラー以外のアプリも候補にあがります。

MainActivity.java


 
activity_main.xml


 
strings.xml


 
AndroidManifest.xml


 
 

Reference:
一般的なインテント, メール

シェアする

  • このエントリーをはてなブックマークに追加

フォローする