отправить письмо с вложенным телом - PullRequest
1 голос
/ 30 марта 2020

Используйте этот код, чтобы отправить мне электронное письмо и работать со мной. Теперь я хочу отправить вложение также с сообщением.

  var email = new Intent(Android.Content.Intent.ActionSend);
            email.PutExtra(Android.Content.Intent.ExtraEmail, new string[] {
            "susairajs@outlook.com",
            "susairajs18@gmail.com"
        });
            email.PutExtra(Android.Content.Intent.ExtraCc, new string[] {
            "susairajs18@live.com"
        });
            email.PutExtra(Android.Content.Intent.ExtraSubject, "Hello Xamarin");
            email.PutExtra(Android.Content.Intent.ExtraText, "Hello Xamarin This is My Test Mail...!");
            email.SetType("message/rfc822");
            StartActivity(email);

Ответы [ 2 ]

1 голос
/ 31 марта 2020

sample.txt в папке Assets. Установите для параметра «Действие сборки» значение «AndroidAsset».

enter image description here

Путь к текстовому файлу.

//android_asset/sample.txt

Использование:

btnSend.Click += delegate
        {
            Android.Net.Uri file = Android.Net.Uri.FromFile(new 
Java.IO.File("//android_asset/sample.txt"));
            var email = new Intent(Android.Content.Intent.ActionSend);
            email.PutExtra(Android.Content.Intent.ExtraEmail,
            new string[] { "xxxxxx@xxxxx.com" });
            //email.PutExtra(Android.Content.Intent.ExtraCc,
            //new string[] { "something@gmail.com" });
            email.PutExtra(Android.Content.Intent.ExtraSubject, "Awesome File");
            email.PutExtra(Android.Content.Intent.ExtraText, "See attached file");
            email.PutExtra(Android.Content.Intent.ExtraStream, file);
            email.SetType("message/rfc822");
            StartActivity(Intent.CreateChooser(email, "Send email..."));
        };

enter image description here

1 голос
/ 30 марта 2020

Самый простой способ сделать это было бы примерно так:

        string filename = "file.ext";
        var filelocation = new File(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, filename);
        Uri path = Android.Net.Uri.FromFile(filelocation);
        Intent emailIntent = new Intent(Intent.ActionSend);
        emailIntent.PutExtra(Intent.ExtraStream, path);

со следующими инструкциями использования:

using File = Java.IO.File;
using Uri = Android.Net.Uri;

Goodluck, не стесняйтесь вернуться назад, если у вас есть запросы

...