So senden Sie E-Mails in Android
In Android können SieIntent.ACTION_SEND
verwenden, um einen vorhandenen E-Mail-Client anzurufen und eine E-Mail zu senden.
Siehe folgende Code-Schnipsel:
Intent email = new Intent(Intent.ACTION_SEND); email.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); email.putExtra(Intent.EXTRA_SUBJECT, "subject"); email.putExtra(Intent.EXTRA_TEXT, "message"); email.setType("message/rfc822"); startActivity(Intent.createChooser(email, "Choose an Email client :"));
P.S This project is developed in Eclipse 3.7, and tested with Samsung Galaxy S2 (Android 2.3.3).
Run & test on real device only.
Wenn Sie dies auf dem Emulator ausführen, wird die Fehlermeldung "No application can perform this action" angezeigt. Dieser Code funktioniert nur auf echten Geräten.
1. Android-Layout
Datei: res / layout / main.xml
2. Aktivität
Vollständige Aktivitätsklasse zum Senden einer E-Mail. Lesen Sie dieonClick()
-Methode, sie sollte selbsterklärend sein.
package com.example.android; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class SendEmailActivity extends Activity { Button buttonSend; EditText textTo; EditText textSubject; EditText textMessage; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); buttonSend = (Button) findViewById(R.id.buttonSend); textTo = (EditText) findViewById(R.id.editTextTo); textSubject = (EditText) findViewById(R.id.editTextSubject); textMessage = (EditText) findViewById(R.id.editTextMessage); buttonSend.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { String to = textTo.getText().toString(); String subject = textSubject.getText().toString(); String message = textMessage.getText().toString(); Intent email = new Intent(Intent.ACTION_SEND); email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to}); //email.putExtra(Intent.EXTRA_CC, new String[]{ to}); //email.putExtra(Intent.EXTRA_BCC, new String[]{to}); email.putExtra(Intent.EXTRA_SUBJECT, subject); email.putExtra(Intent.EXTRA_TEXT, message); //need this to prompts email client only email.setType("message/rfc822"); startActivity(Intent.createChooser(email, "Choose an Email client :")); } }); } }
3. Demo
Sehen Sie sich das Standardbild an, geben Sie die Details ein und klicken Sie auf die Schaltfläche "Senden".
Es fordert Ihren vorhandenen E-Mail-Client zur Auswahl auf.
In diesem Fall habe ichGmail ausgewählt, und alle zuvor ausgefüllten Details werden automatisch in den Client vonGmaileingetragen.
Note
Android bietet keine API zum direkten Senden von E-Mails. Sie müssen den vorhandenen E-Mail-Client anrufen, um E-Mails zu senden.
Quellcode herunterladen
Laden Sie es herunter -Android-Send-Email-Example.zip (16 KB)