Saya mencoba menggunakan file maksuduntuk mengirim email dari lamaran saya tetapi bidang Ke pada email tidak akan terisi. Jika saya menambahkan kode untuk mengisi subjek atau teks, mereka berfungsi dengan baik. Hanya bidang Ke tidak akan terisi.
Saya juga mencoba mengubah jenis menjadi "teks / biasa" dan "teks / html" tetapi saya mendapatkan masalah yang sama. Apakah ada yang bisa membantu?
public void Email(){
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setType("message/rfc822"); //set the email recipient
String recipient = getString(R.string.IntegralEmailAddress);
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL , recipient);
//let the user choose what email client to use
startActivity(Intent.createChooser(emailIntent, "Send mail using...")); }
Klien email yang saya coba gunakan adalah Gmail
android
android-intent
pengguna
sumber
sumber
intent.putExtra(Intent.EXTRA_EMAIL, list.toArray())
AKAN BEKERJA karena list.toArray () menghasilkan Object [] dan bukan String []intent.putExtra(Intent.EXTRA_EMAIL, list.toArray(new String[0]))
Gunakan ini
public void Email(){ // use this to declare your 'recipient' string and get your email recipient from your string xml file Resources res = getResources(); String recipient = getString(R.string.IntegralEmailAddress); Intent emailIntent = new Intent(Intent.ACTION_SEND); emailIntent.setType("message/rfc822"); //set the email recipient emailIntent.putExtra(Intent.EXTRA_EMAIL, recipient); //let the user choose what email client to use startActivity(Intent.createChooser(emailIntent, "Send mail using...")); ``}
Ini akan berhasil :)
Inilah yang dikatakan dokumentasi android tentang Intent.Extra_Email
-A string array dari semua alamat email penerima "To".
Jadi Anda harus memberi makan string dengan benar Anda dapat membaca lebih lanjut di sini
http://developer.android.com/guide/components/intents-common.html#Email dan di sini http://developer.android.com/guide/topics/resources /string-resource.html Atau gunakan tindakan ACTION_SENDTO dan sertakan skema data "mailto:". Sebagai contoh:
Intent intent = new Intent(Intent.ACTION_SENDTO); intent.setData(Uri.parse("mailto:")); // only email apps should handle this intent.putExtra(Intent.EXTRA_EMAIL, addresses); intent.putExtra(Intent.EXTRA_SUBJECT, subject); if (intent.resolveActivity(getPackageManager()) != null) { startActivity(intent); }
sumber
Di Kotlin - Android
fun sendMail( activity: Activity, emailIds: Array<String>, subject: String, textMessage: String ) { val emailIntent = Intent(Intent.ACTION_SEND) emailIntent.type = "text/plain" emailIntent.putExtra(Intent.EXTRA_EMAIL, emailIds) emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject) emailIntent.putExtra(Intent.EXTRA_TEXT, textMessage) emailIntent.setType("message/rfc822") try { activity.startActivity( Intent.createChooser( emailIntent, "Send email using..." ) ) } catch (ex: ActivityNotFoundException) { Toast.makeText( activity, "No email clients installed.", Toast.LENGTH_SHORT ).show() } }
//argument of function val subject = "subject of you email" val eMailMessageTxt = "Add Message here" val eMailId1 = "[email protected]" val eMailId2 = "[email protected]" val eMailIds: Array<String> = arrayOf(eMailId1,eMailId2) //Calling function sendMail(this, eMailIds, subject, eMailMessageTxt)
Saya harap potongan kode ini akan membantu pengembang kotlin.
sumber
private void callSendMeMail() { Intent Email = new Intent(Intent.ACTION_SEND); Email.setType("text/email"); Email.putExtra(Intent.EXTRA_EMAIL, new String[] { "[email protected]" }); Email.putExtra(Intent.EXTRA_SUBJECT, "Feedback"); startActivity(Intent.createChooser(Email, "Send mail to Developer:")); }
sumber
Beberapa hal:
1 - Anda perlu menyetel variabel konstanta tindakan sebagai ACTION_SENDTO.
Intent intentEmail = new Intent(Intent.ACTION_SENDTO);
2 - Jika Anda ingin dibuka hanya dengan email, gunakan metode setData ():
intentEmail.setData(Uri.parse("mailto:"));
Jika tidak, Anda akan diminta untuk membukanya sebagai teks, gambar, file audio oleh aplikasi lain yang ada di perangkat Anda.3 - Anda harus meneruskan string ID email sebagai objek array dan bukan hanya sebagai string. Stringnya adalah: "[email protected]" . Objek Larik string adalah: String baru [] {"email1", "email2", "more_email"} .
intentEmail.putExtra(Intent.EXTRA_EMAIL, new String[] {"[email protected]", "[email protected]"});
sumber