#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.
Выполните следующие действия для входа в систему с использованием паролей приложений. Надеюсь, это сработает!