Xamarin.forms 如何在Xamarin表单中打开默认电子邮件应用程序收件箱
我正在开发一个Xamarin表单应用程序,并试图将默认邮件客户端直接打开到收件箱 我能够使用XF Essentials打开并传递数据以撰写消息Xamarin.forms 如何在Xamarin表单中打开默认电子邮件应用程序收件箱,xamarin.forms,Xamarin.forms,我正在开发一个Xamarin表单应用程序,并试图将默认邮件客户端直接打开到收件箱 我能够使用XF Essentials打开并传递数据以撰写消息 Email.ComposeAsync(message); 但我希望该应用程序在按下按钮时打开默认邮件应用程序的收件箱。这在Xamarin形式中可能吗?我认为这是您需要的。 在窗体项目中创建接口: public interface IOpenManager { void openMail(); } 然后在每个平台上实施,对于iOS: [asse
Email.ComposeAsync(message);
但我希望该应用程序在按下按钮时打开默认邮件应用程序的收件箱。这在Xamarin形式中可能吗?我认为这是您需要的。
在窗体项目中创建接口:
public interface IOpenManager
{
void openMail();
}
然后在每个平台上实施,对于iOS:
[assembly: Dependency(typeof(OpenImplementation))]
namespace Demo.iOS
{
public class OpenImplementation : IOpenManager
{
public void openMail()
{
NSUrl mailUrl = new NSUrl("message://");
if (UIApplication.SharedApplication.CanOpenUrl(mailUrl))
{
UIApplication.SharedApplication.OpenUrl(mailUrl);
}
}
}
}
对于Android:
[assembly: Dependency(typeof(OpenImplementation))]
namespace Demo.Droid
{
public class OpenImplementation : IOpenManager
{
public void openMail()
{
Intent intent = new Intent(Intent.ActionMain);
intent.AddCategory(Intent.CategoryAppEmail);
Android.App.Application.Context.StartActivity(intent);
}
}
}
最后,通过:
DependencyService.Get().openMail()调用此dependency代码>检查,您必须在android项目上实现它,然后通过使用它,非常感谢。今天早上上班时,我看到了两个答案。感谢您抽出时间回复。谢谢!!我努力寻找任何有用的东西,但这正是我所需要的。