私は多くのソースと質問を見てきましたが、私はまだ、団結を通じて電子メールを送信するこのコードは、アンドロイドビルドでは機能していないことは明らかではありません。それはWindowsのビルドでうまく動作しますが、アンドロイドで動作しません。誰かが私を助けることができる?ここにコードがあります -電子メールはユニティアンドロイドで送信していませんか?
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.IO;
using System.Net;
using System.Net.Mail;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using UnityEngine;
public class EmailUnity
{
public static string SenderEmail;
public static string SenderPassword;
public static string SmtpClient;
public static int SmtpPort;
public static void SendEmail(string to, string subject, string body, bool isHtml, string[] attachmentPaths,
Action<object, AsyncCompletedEventArgs> callback = null)
{
try
{
SmtpClient emailServer = new SmtpClient(SmtpClient, SmtpPort);
emailServer.EnableSsl = true;
emailServer.Credentials = (ICredentialsByHost) new NetworkCredential(SenderEmail, SenderPassword);
ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
MailMessage message = new MailMessage(SenderEmail, to);
message.Subject = subject;
message.Body = body;
message.IsBodyHtml = isHtml;
foreach (string path in attachmentPaths)
{
if (!string.IsNullOrEmpty(path) && File.Exists(path))
{
message.Attachments.Add(new Attachment(path));
}
}
if (callback == null)
{
callback = SampleCallback;
}
emailServer.SendCompleted += new SendCompletedEventHandler(callback);
emailServer.SendAsync(message, "");
Debug.Log("Email sending");
}
catch (Exception ex)
{
Debug.Log("Error: " + ex.Message);
callback("", new AsyncCompletedEventArgs(ex, true, "Exception occured"));
}
}
private static void SampleCallback(object sender, AsyncCompletedEventArgs e)
{
if (e.Cancelled || e.Error != null)
{
Debug.Log("Error: " + e.Error.Message);
}
else
{
Debug.Log("Email sent");
}
}
}
はあなたがアンドロイドで* doen't仕事とはどういう意味ですか必要* ?それを説明してください。 – zwcloud
'SendEmail'メソッドを呼び出すコードを提供してください。 – Hristo