gpt4 book ai didi

android - Monodroid - 多个邮件附件

转载 作者:行者123 更新时间:2023-11-29 00:32:09 26 4
gpt4 key购买 nike

我正在尝试发送一封邮件以及附加的多个文件,但是我无法将它们添加到邮件中。我这样进行:

private void SendMail (List<Data> ToSend)
{
var Attachments = new List<Android.Net.Uri>();
Intent i = new Intent (Android.Content.Intent.ActionSendMultiple);
i.SetType ("message/rfc822");
i.PutExtra (Android.Content.Intent.ExtraEmail, new String[]{"try@mail.com"});
i.PutExtra (Android.Content.Intent.ExtraSubject, "Test");
i.PutExtra (Android.Content.Intent.ExtraText, "Test Test...");
foreach (var content in ToSend) {
Java.IO.File myFile = new Java.IO.File(content.attachmentloc);
// attachmentloc is a string containing the absolute path to the file to attach.
var uri = Android.Net.Uri.FromFile(myFile);
Attachments.Add (uri);
}
i.PutParcelableArrayListExtra(Android.Content.Intent.ExtraStream, Attachments.ToArray());
StartActivityForResult(Intent.CreateChooser(i, "Send mail..."), 0);
}

我检查过,字符串中的路径是好的。但是方法 .Exists(当在 foreach 中的 Java.IO.File 上使用时)返回 false。可能是什么原因?

感谢您的帮助。

编辑:

尝试添加单个附件时,效果很好。但是,每当我调用一个暗示会有多个附件的函数时,它就会失败。

又名:

Intent i = new Intent (Android.Content.Intent.ActionSend);
var uri = Android.Net.Uri.Parse (ex._FileLocation);
i.PutExtra(Intent.ExtraStream, uri);

工作正常但是替换

    Intent i = new Intent (Android.Content.Intent.ActionSend);

通过

    Intent i = new Intent (Android.Content.Intent.ActionSendMultiple);

导致同样的失败,替换也是如此:

var uri = Android.Net.Uri.Parse (ex._FileLocation);
i.PutExtra(Intent.ExtraStream, uri);

通过

var Attachments = new List<Android.Net.Uri> ();
foreach (var ex in ToSend) {
var uri = Android.Net.Uri.Parse (ex._FileLocation);
Attachments.Add (uri);
//o
}
i.PutParcelableArrayListExtra (Android.Content.Intent.ExtraStream, Attachments.ToArray ());

...我正在使用默认的邮件应用程序(不是 gmail)我还尝试按照其他地方的建议将 Intent 类型设置为“*/* ”(不带空格)。还尝试了 AddFlags (ActivityFlags.GrantReadUriPermission);

因为它只处理单个附件,所以我知道 URI 肯定有效...

我真的需要帮助。

最佳答案

我个人没有找到这个问题的有效答案。我找到的唯一答案是解决方法:将所有文件压缩到一个 .zip 存档中,然后将该存档作为单个附件发送。

关于android - Monodroid - 多个邮件附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14873113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com