【问题标题】:Send email with subject and body Xamarin Forms发送带有主题和正文 Xamarin 表单的电子邮件
【发布时间】:2017-12-06 01:40:46
【问题描述】:

我在我的 Xamarin.Forms 项目中使用以下代码打开设备上的本机电子邮件客户端,并在正文中预先填充了一些信息,但 Android 上的电子邮件客户端打开时没有设置正文和主题;它只有mailto 属性。

以下代码适用于 iOS,但在 Android 上,它会打开电子邮件客户端并仅显示 mailto

string body = "Name : "+"\r\n" +NameLabel.Text +"Phone : "+Phonelabel.Text +"\r\n"+ "Email : "+ EmailLabel.Text ;

string strMailTo = @"mailto:test@gmail.com?Subject="profile"&Body="+body;

Device.OpenUri(new Uri(strMailTo));

【问题讨论】:

    标签: xamarin xamarin.forms xamarin.android


    【解决方案1】:

    我想你可以试试这个插件。我已经使用了一些应用程序并且工作正常。是 PCL。

    https://www.nuget.org/packages/Xam.Plugins.Messaging/

    【讨论】:

    • 您好,感谢您的回答。我从 nugget 添加插件。但是当代码执行时我有异常(Java.lang.InvocationTargetException)。我在 xamarin 表单应用程序中添加插件和内部 .droid 和 .ios 项目?
    • 短信和电话都可以,但是邮件任务不运行...(用安卓设备测试)。
    • 还有github例子吗?奇怪的。您填写了所有字段吗?标题、正文...如果再次遇到问题,请尝试联系作者。
    • 是的,我尝试了 github 示例,但什么也没发生。感谢您的宝贵时间。
    • 我使用依赖服务,现在玩得很好!!
    【解决方案2】:

    我的代码使用 Xamarin Forms 中的 Device.OpenUri。我认为您的引述可能使您感到困惑:

    Device.OpenUri(new Uri("mailto:email@test.com?subject=MobileTing&body=A message for you consideration."));
    

    【讨论】:

      【解决方案3】:

      我在 Xamarin.Forms DependencyService 和这段代码中使用过:

      var email = new Intent (Android.Content.Intent.ActionSend);
      email.PutExtra (Android.Content.Intent.ExtraEmail,
      new string[]{"person1@xamarin.com", "person2@xamrin.com"} );
      email.PutExtra (Android.Content.Intent.ExtraCc,
      new string[]{"person3@xamarin.com"} );
      email.PutExtra (Android.Content.Intent.ExtraSubject, "Hello Email");
      email.PutExtra (Android.Content.Intent.ExtraText,
      "Hello from Xamarin.Android");
      

      it full example

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-07-24
        • 1970-01-01
        • 2020-11-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多