17 Kasım 2012 Cumartesi

Windows Phone üzerinde C# ile e-Mail Göndermek

Windows Phone tarafında, aynı SMS gönderiminde olduğu gibi programatik olarak e-Mail göndermek de mümkün değil. Sebep de yine aynı; son kullanıcının güvenliği. Kişinin mailbox'ından onun haberi olmadan, onun adına e-Mail çıkmasına izin verilmiyor.

Gönderilecek metinsel içerik, konu başlığı ve alıcı ya da alıcılar programatik olarak ayarlanarak e-Mail gönderme ekranı açılabiliyor ve yine Gönder butonuna kullanıcının basması gerekiyor.

e-Mail gönderme ekranını hazırlamak için EmailComposeTask sınıfını kullanacağız. Bu sınıf, aynı SmsComposeTask sınıfı gibi Microsoft.Phone.dll içerisinde ve Microsoft.Phone.Tasks isimalanının altında yer alıyor.

using Microsoft.Phone.Tasks; ifadesini kullanarak gerekli isimalanını kod sayfasına ekledikten sonra aşağıdaki kod bloğu ile e-Mail gönderim ekranı açılabilir.

EmailComposeTask eTask = new EmailComposeTask();
eTask.To = "sanalalici@neresi.com"; // Alıcı adresi
eTask.Subject = "Günaydın"; // Gönderilecek mailin konu başlığı
eTask.Body = "Günün güzel geçsin, akşam arıza çıkarma"; // Mail içeriği
eTak.Show(); // Mail gönderme ekranını açan satır.

DİKKAT: Bu kod maili göndermez. Alıcının adresi, konu başlığı ve gönderilecek mesajı barındıran ekranı açar ve kullanıcının Gönder butonuna basması beklenir.

Maili göndermek için, öncelikle EmailComposeTask sınıfından bir nesne örneği oluşturuluyor ve
To, Subject ve Body gibi özelliklerin değerleri atanıyor.

Show metodu çağırıldığında da, eMail Gönderme ekranı verilen değerlerle birlikte dolu olarak açılıyor. Bu noktadan sonra maili gönderebilmek için kullanıcının gönder butonuna basması yeterli.


NOT: Kullanıcı eğer telefonuna herhangi bir mail hesabı kurmamış ise, mail göndermek isterken sol tarafta bulunan görseldeki gibi bir hata mesajı alır. Herhangi bir mail hesabı kurulduktan sonra mail göndermek için bir engel kalmaz.

Bu kodları, emulatör üzerinde denediğinizde de karşılaşacağınız ekran soldaki gibi olacaktır. Emulatör üzerinde bir mail hesabı tanımlamak için, Windows Phone SDK 7.1.1 güncellemesini kurup http://dotnet.dzone.com/articles/real-email-accounts-inside linkindeki bilgilerden faydalanabilir ve gmail ya da yahoo hesabı kurup, test edebilirsiniz.

Windows Phone üzerinde C# ile SMS Gönderimi yazısı için bu linki inceleyebilirsiniz.

2 yorum:

  1. The Windows Phone API Reference node encompasses the complete set of API available on Windows Phone 8.

     Rize

    YanıtlaSil
  2. Windows 8.1 için olanı var mı?

    YanıtlaSil