Hola amig@s hoy veremos un nuevo tutorial de como enviar email en android studio, sera algo básico porque luego nos servirá como base para ejercicios mas avanzados.
Paso 1: Empezamos con la parte gráfica, necesitaremos un button y un TexView para mostrar el cuerpo del mensaje, también podrías usar un EditText, eso se los dejo a su imaginación, debería quedar de la siguiente forma:
activity_main
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true"> <Button android:id="@+id/btnEmail" android:text="Enviar Email" android:layout_width="fill_parent" android:layout_height="wrap_content"> </Button> <TextView android:id="@+id/text_to_email" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/my_text" /> </LinearLayout> </RelativeLayout>
AndroidManifest
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.androidmorefast.pc.appenviaremail"> <!-- Permisos requeridos --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
MainActivity
public class MainActivity extends Activity implements View.OnClickListener { private static final String tag = "Main"; private Button botonEmail; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.botonEmail = (Button) this.findViewById(R.id.btnEmail); this.botonEmail.setOnClickListener(this); } @Override public void onClick(View view) { //Verificamos si el usuario ha hecho click en el Boton de Enviar Email if (view == this.botonEmail) { //Llamamos al metodo enviarEmail enviarEmail(); } } private void enviarEmail(){ //Instanciamos un Intent del tipo ACTION_SEND Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); //Aqui definimos la tipologia de datos del contenido dle Email en este caso text/html emailIntent.setType("text/html"); // Indicamos con un Array de tipo String las direcciones de correo a las cuales enviar emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); // Aqui definimos un titulo para el Email emailIntent.putExtra(android.content.Intent.EXTRA_TITLE, "El Titulo"); // Aqui definimos un Asunto para el Email emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "El Asunto"); // Aqui obtenemos la referencia al texto y lo pasamos al Email Intent emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, getString(R.string.my_text)); try { //Enviamos el Correo iniciando una nueva Activity con el emailIntent. startActivity(Intent.createChooser(emailIntent, "Enviar Correo...")); } catch (android.content.ActivityNotFoundException ex) { Toast.makeText(MainActivity.this, "No hay ningun cliente de correo instalado.", Toast.LENGTH_SHORT).show(); } } }
Hola soy Alex Céspedes fundador de ANDROFAST, programo algunas cosas por diversión, me gusta aprender cosas nuevas y estoy pendiente de todo lo que tenga que ver con tecnología. Este blog lo cree para todas las personas que tengan dificultades en la programación, para ser sincero nunca fui bueno y reprobé algunos cursos de programación, pero mis ganas de aprender pudieron más. SI YO PUEDO TU PUEDES ANIMO!