Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Could not resolve host 'smtp.gmail.com'
- string subject = "subject here ";
- string body= "body here ";
- try
- {
- var mail = new MailMessage();
- var smtpServer = new SmtpClient("smtp.gmail.com", 587);
- mail.From = new MailAddress("myEmailAddress@gmail.com");
- mail.To.Add("anotherAddress@yahoo.com");
- mail.Subject = subject;
- mail.Body = body;
- smtpServer.Credentials = new NetworkCredential("username", "pass");
- smtpServer.UseDefaultCredentials = false;
- smtpServer.EnableSsl = true;
- smtpServer.Send(mail);
- }
- catch (Exception ex)
- {
- System.Diagnostics.Debug.WriteLine(ex);
- }
- public static string ICSPath
- {
- get
- {
- var path = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, StaticData.CalendarFolderName);
- if (!Directory.Exists(path))
- Directory.CreateDirectory(path);
- return Path.Combine(path, StaticData.CalendarFileName);
- }
- }
- public async Task<bool> ShareCalendarEvent(List<ISegment> segmentList)
- {
- Intent choserIntent = new Intent(Intent.ActionSend);
- //Create the calendar file to attach to the email
- var str = await GlobalMethods.CreateCalendarStringFile(segmentList);
- if (File.Exists(ICSPath))
- {
- File.Delete(ICSPath);
- }
- File.WriteAllText(ICSPath, str);
- Java.IO.File filelocation = new Java.IO.File(ICSPath);
- var path = Android.Net.Uri.FromFile(filelocation);
- // set the type to 'email'
- choserIntent.SetType("vnd.android.cursor.dir/email");
- //String to[] = { "asd@gmail.com" };
- //emailIntent.putExtra(Intent.EXTRA_EMAIL, to);
- // the attachment
- choserIntent.PutExtra(Intent.ExtraStream, path);
- // the mail subject
- choserIntent.PutExtra(Intent.ExtraSubject, "Calendar event");
- Forms.Context.StartActivity(Intent.CreateChooser(choserIntent, "Send Email"));
- return true;
- }
- public static string ICSPath
- {
- get
- {
- var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), StaticData.CalendarFolderName);
- if (!Directory.Exists(path))
- Directory.CreateDirectory(path);
- return Path.Combine(path, StaticData.CalendarFileName);
- }
- }
- public async Task<bool> ShareCalendarEvent(List<ISegment> segmentList)
- {
- //Create the calendar file to attach to the email
- var str = await GlobalMethods.CreateCalendarStringFile(segmentList);
- if (File.Exists(ICSPath))
- {
- File.Delete(ICSPath);
- }
- File.WriteAllText(ICSPath, str);
- MFMailComposeViewController mail;
- if (MFMailComposeViewController.CanSendMail)
- {
- mail = new MFMailComposeViewController();
- mail.SetSubject("Calendar Event");
- //mail.SetMessageBody("this is a test", false);
- NSData t_dat = NSData.FromFile(ICSPath);
- string t_fname = Path.GetFileName(ICSPath);
- mail.AddAttachmentData(t_dat, @"text/v-calendar", t_fname);
- mail.Finished += (object s, MFComposeResultEventArgs args) =>
- {
- //Handle action once the email has been sent.
- args.Controller.DismissViewController(true, null);
- };
- Device.BeginInvokeOnMainThread(() =>
- {
- UIApplication.SharedApplication.KeyWindow.RootViewController.PresentViewController(mail, true, null);
- });
- }
- else
- {
- //Handle not being able to send email
- await App.BasePageReference.DisplayAlert("Mail not supported",
- StaticData.ServiceUnavailble, StaticData.OK);
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement