How to Send Email using EmailComposeTask in Windows Phone 8 App
Windows Phone 8 app developers use EmailComposeTask to send email within a Windows Phone 8 app.
EmailComposeTask (email compose task) is a Windows Phone 8 Launcher which launches email application on WP8 users smartphone with set values of email fields within app code.
Programmers can build their app code so that the email subject, body and the recipients of the email can be configured and displayed as a new email message when the Windows Phone user taps a button on the app page.
Of course for the sake of the Windows Phone user's security, the configured email message can only be sent if the user presses the send button in the email app.
EmailComposeTask is one of Windows Phone Launchers that is available on Windows Phone 8 and Windows Phone 7.1
In order to use EmailComposeTask just like any other launchers (WebBrowserTask, SmsComposeTask, ShareLinkTask etc.) the Microsoft.Phone.Tasks namespace should be included within the app code.
So if the Windows Phone 8 app developer is using VB.NET then add Microsoft.Phone.Tasks namespace as follows:
If the Windows Phone app is being developed using C-Sharp (C#) than use the "Using" syntax
Now developers are ready to add a button to demonstrate how to send an email within a WP8 app.
Place a button or an eMail image like I did on my free Windows Phone 8 Time Management Quotes app on one of the app pages, let's say on design view of MainPage.xaml
Send email from Windows Phone 8 app using EmailComposeTask Launcher
Now switch to Events tab of the Properties screen of the button or image component and create a Tap event.
Since I named as "email" the picture I used in design view, the Tap event is automatically named as email_Tap
Let's now switch to code behind MainPage.xaml.vb of the app page MainPage.xaml
The Tap event code actually makes call to a method named sendEmail which creates an instance of the EmailComposeTask.
When the EmailComposeTask instance is created, the Subject property and Body property of the email compose task is populated with application values.
These are the text values displayed on screen to the Windows Phone 8 app user.
Private Sub email_Tap(sender As Object, e As GestureEventArgs) Handles email.Tap
Dim selectedQuote As Quote = TimeTrackingQuotes.Read(currentQuoteNo)
If Not selectedQuote Is Nothing Then
Private Sub sendEmail(quote As Quote)
Dim emailComposeTask As EmailComposeTask = New EmailComposeTask()
emailComposeTask.Subject = quote.QuoteTitle
emailComposeTask.Body = quote.QuoteText
'emailComposeTask.To = "email@example.com"
'emailComposeTask.Cc = "firstname.lastname@example.org"
'emailComposeTask.Bcc = "email@example.com"
Please note that I did not set TO, CC or BCC properties of the EmailComposeTask.
But you can configure these values within the Windows Phone app codes.
EmailComposeTask Show() method launches default email app on the Windows Phone device with configured field values just like in below screenshot.
Compose and send email from Windows Phone 8 app using EmailComposeTask Launcher
Since the EmailComposeTask Windows Phone launcher is using the Windows Phone user's defined active email accounts, the user must have already set up an email account on the Windows Phone 8 device.
Make sure you've set up an account and try again.
An other place where programmers can use send email function in Windows Phone 8 apps is send feedback pages.
Windows Phone app developers can add a app review button or send feedback button with TO field is set to their email addresses and subject field is set to the name of the current Windows Phone 8 app.
When the EmailComposeTask displays the email app, users can type their feedback or review in the Body field and send the email to the app developers or app publishers.