Я пытаюсь отправить электронное письмо в своем проекте форм xamarin, я пробовал как в симуляторе iPhone, так и на устройстве iPhone. Когда я нажимаю кнопку отправки электронной почты на iPhone, ничего не происходит, даже ошибка отладки. Я также убедился, что я вошел в систему со своей электронной почтой на устройстве.
Я использовал serviceDependency и выполнил настройку по этой ссылке: https://developer.xamarin.com/recipes/ios/shared_resources/email/send_an_email/
мой интерфейс:
public interface InterfaceEmail
{
void sendEmail();
}
iOS-реализация:
[assembly: Xamarin.Forms.Dependency(typeof(SendEmail))]
namespace myProject.iOS
{
public partial class SendEmail : InterfaceEmail
{
MFMailComposeViewController mailController;
public SendEmail() {}
public void sendEmail()
{
if (MFMailComposeViewController.CanSendMail)
{
mailController = new MFMailComposeViewController();
mailController.SetToRecipients (new string[] {"[email protected]"});
mailController.SetSubject ("test mail");
mailController.SetMessageBody ("This is a test", false);
mailController.Finished += (object sender, MFComposeResultEventArgs e) =>
{
Console.WriteLine(e.Result.ToString());
e.Controller.DismissViewController(true, null);
};
UIApplication.SharedApplication.KeyWindow.RootViewController.PresentViewController(mailController, true, null);
}}}}
Реализация в моем общем коде:
async void Handle_ToolbarButton(object sender, System.EventArgs e)
{
var action = await DisplayActionSheet("What do you want to do?", "Abort", null, "Send email");
if(action == "Send email")
{
DependencyService.Get<InterfaceEmail>().sendEmail();
}
}
Кто-нибудь знает, что здесь может быть не так?