Отправка почты с помощью ma

#flutter #dart

#трепетание #дротик

Вопрос:

Этот код возвращает «Сообщение не отправлено» при запуске и не отправляет сообщение на электронную почту.

Я хочу отправить автоматическую почту в gmail с помощью функции sendMail.

Я скопировал этот код из dard pub и github.

 sendMail() async {
      String username = '*******@gmail.com';
      String password = '*********';
      final smtpServer = gmail(username, password);
    
      final message = Message()
        ..from = Address(username)
        ..recipients.add('********@gmail.com')
        ..subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()}'
        ..text = 'This is the plain text.nThis is line 2 of the text part.'
        ..html = "<h1>Test</h1>n<p>Hey! Here's some HTML content</p>";
    
      try {
        final sendReport = await send(message, smtpServer);
        print('Message sent: '   sendReport.toString());
      } on MailerException catch (e) {
        print('Message not sent.');
        for (var p in e.problems) {
          print('Problem: ${p.code}: ${p.msg}');
        }
      }
    }
 

Ответ №1:

Сообщение не будет отправлено, поскольку вы используете свой обычный пароль Gmail. Просто нужно сгенерировать пароль приложения. Пароль приложения — это 16-значный пароль, который дает приложению или устройству, отличному от Google, разрешение на доступ к вашей учетной записи Google.

Выполните следующие действия для входа в систему с использованием паролей приложений. Надеюсь, это сработает!