我正在我的 iOS 和 Android 应用程序中开发电子邮件发送功能。
这是使用 OpenSSL 通过 Gmail 发送电子邮件的功能。
我正在使用 Delphi 10.2.3 Tokyo 和 Indy 10。
我向 iTunes Connect 提交了我的 iOS 应用程序,但他们拒绝了我的应用程序,因为此功能在 IPv6 中不起作用。
他们说
我们在通过连接到 IPv6 网络的 Wi-Fi 运行 iOS 11.4.1 的 iPad 和 iPhone 上进行审核时,发现您的应用存在一个或多个错误。
他们还向我发送了错误的屏幕截图:
解析地址 smtp.gmail.com 时发生错误:(8)
如何修复此错误以便正确使用 IPv6?我的代码如下:
Procedure MailSend;
Var
Connected: Boolean;
Begin
IdSMTP := TIdSMTP.Create(nil);
try
IdSMTP.Host := 'smtp.gmail.com';
IdSMTP.Port := 587;
IdSMTP.Username := 'xxxx@gmail.com'; // UserName
IdSMTP.Password := 'xxxx'; // Password
SSL := TIdSSLIOHandlerSocketOpenSSL.Create;
try
SSL.Host := IdSMTP.Host;
SSL.Port := IdSMTP.Port; …Run Code Online (Sandbox Code Playgroud)