Send Email Intent

前端 未结 30 3766
忘掉有多难
忘掉有多难 2020-11-22 07:27
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(\"text/html\");
intent.putExtra(Intent.EXTRA_EMAIL, \"emailaddress@emailaddress.com\");
intent.putExtr         


        
30条回答
  •  半阙折子戏
    2020-11-22 07:47

    Works on All android Versions:

    String[] TO = {"email@server.com"};
        Uri uri = Uri.parse("mailto:email@server.com")
                .buildUpon()
                .appendQueryParameter("subject", "subject")
                .appendQueryParameter("body", "body")
                .build();
        Intent emailIntent = new Intent(Intent.ACTION_SENDTO, uri);
        emailIntent.putExtra(Intent.EXTRA_EMAIL, TO);
        startActivity(Intent.createChooser(emailIntent, "Send mail..."));
    

    updated for android 10, now using kotlin.

    fun Context.sendEmail(adress:String?,subject:String?,body:String?){
    val TO = arrayOf(adress)
    val uri = Uri.parse(adress)
        .buildUpon()
        .appendQueryParameter("subject", subject)
        .appendQueryParameter("body", body)
        .build()
    val emailIntent = Intent(Intent.ACTION_SENDTO, uri)
    emailIntent.setData(Uri.parse("mailto:$adress"));
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
    emailIntent.putExtra(Intent.EXTRA_TEXT, body);
    emailIntent.putExtra(Intent.EXTRA_EMAIL, TO)
    ContextCompat.startActivity(this,Intent.createChooser(emailIntent, "Send 
    mail..."),null)
    }
    

提交回复
热议问题