【发布时间】:2016-10-08 07:48:36
【问题描述】:
我正在尝试使用 Xamarin.Plugins.Messaging NuGet 包从我的 Xamrin Forms 共享项目中发送电子邮件,但一直遇到 Warning: Attempt to present X on Y whose view is not in the window hierarchy! 并且没有出现任何内容。
我还有什么需要设置的吗?
private void SendEmail()
{
var emailMessagner = CrossMessaging.Current.EmailMessenger;
if (emailMessagner.CanSendEmail)
{
Console.WriteLine("Can send mail");
var email = new EmailMessageBuilder()
.To("emailaddress@gmail.com")
.Subject("Setting subject")
.Body("Setting email body")
.WithAttachment(_filePath, "text/html")
.Build();
emailMessagner.SendEmail(email);
}
else
{
Console.WriteLine("Cant send mail");
}
}
它可以在 android 上运行(除了得到 Permission denied for attachment),但我在 iOS 上得到 window not in hierarchy 错误。我可以编写自己的电子邮件发件人,以确保它的 viewController 在窗口层次结构中,但我认为这个插件可以处理。
【问题讨论】:
-
您能发布完整的错误详细信息/堆栈跟踪吗?另外,您可以找到Messaging插件here的源代码自行调试
-
你是在真机还是模拟器上尝试这个(即模拟器会失败)
-
@SushiHangover 是的,它是一个真正的设备。
-
@Rohit 他正在使用
Xamarin.Forms共享项目。 -
好的,太好了:) 如果您可以发布解决方案供其他人参考,那就太好了。
标签: plugins xamarin xamarin.ios xamarin.forms