Sample code for 30+ languages & platforms
Dart

SMTP GMail Send using App Password

See more GMail SMTP/IMAP/POP Examples

Demonstrates how to authenticate using an app password with GMail for SMTP (port 465 using implicit SSL/TLS).

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example requires the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  // Starting May 30, 2022, Google will no longer support the use of third-party apps or devices 
  // which ask you to sign in to your Google Account using only your username and password.

  // Instead of authenticating with your GMail username/password, a GMail user can create an App Password
  // and then login using their username/app_password.   It's literally the same, except it allows a GMail
  // account owner to isolate passwords to specific applications.

  // The Gmail account owner would first need to make sure she has 2-Step Verification setup for her account.
  // Note: The 2FA verification is not a factor when authenticating with an app password. The 2FA is required
  // to setup app passwords in the Google account console.  See Sign in with App Passwords

  // After the GMail account owner has setup his app password, he simply uses the app password instead of his GMail account password.

  final mailman = CkMailMan();

  mailman.smtpHost = 'smtp.gmail.com';

  mailman.smtpUsername = 'user@gmail.com';
  mailman.smtpPassword = 'srnyyvqajocnsvdp';

  mailman.smtpSsl = true;
  mailman.smtpPort = 465;

  try {
    mailman.smtpConnect();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  try {
    mailman.smtpAuthenticate();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('SMTP Success!');
}