質問編集履歴

1

コードの変更と試した事を追記

2024/04/02 21:19

投稿

Dimlos
Dimlos

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,9 +1,6 @@
1
1
  インテントを使ってGmailを起動して各項目を入力したいのですがうまくいきません。
2
2
  ネットの情報を元にgetLaunchIntentForPackageでGmailを指定してみましたがアプリ選択の画面が出てしまいます。
3
3
  どのように修正すればGmailに明示的インテントを送信できるのか教えて頂けないでしょうか?
4
-
5
-
6
-
7
4
 
8
5
  ```kotlin
9
6
  package com.example.intent_mail
@@ -18,15 +15,19 @@
18
15
  override fun onCreate(savedInstanceState: Bundle?) {
19
16
  super.onCreate(savedInstanceState)
20
17
  setContentView(R.layout.activity_main)
18
+ val intent = Intent().apply {
21
- val intent = Intent(Intent.ACTION_SENDTO).apply {
19
+ intent.setAction(Intent.ACTION_SENDTO)
20
+ //intent.setPackage("com.google.android.gm")
21
+ //intent.setClassName("com.google.android.gm","com.google.android.gm.ComposeActivityGmailExternal")
22
22
  data = Uri.parse("mailto:")
23
- putExtra(Intent.EXTRA_EMAIL, arrayOf("abc@abc.com"))
23
+ putExtra(Intent.EXTRA_EMAIL, arrayOf("abc@abc.com","def@abc.com"))
24
- putExtra(Intent.EXTRA_SUBJECT, "件名")
24
+ putExtra(Intent.EXTRA_SUBJECT,"テストの件名")
25
- putExtra(Intent.EXTRA_TEXT, "本文");
25
+ putExtra(Intent.EXTRA_TEXT,"テストの本文");
26
- packageManager.getLaunchIntentForPackage("com.google.android.gm");
27
26
  }
28
- startActivity(intent);
27
+ startActivity(intent);
28
+ finish()
29
29
  }
30
30
  }
31
31
  ```
32
+ intent.setPackageとintent.setClassNameを個別にアクティブにして試しましたが上手くいきません。クラス名はShortcutMakerでSendtoでGmailのメール作成画面が起動する事を確認しています。
32
33