| ID | TSS000455 | Creation date | October 19, 2006 |
| Platform | S60 3rd Edition | Devices | |
| Category | Symbian C++ | Subcategory |
| Keywords (APIs, classes, methods, functions): |
Creating e-mail accounts in code
Symbian OS v9.1 offers a new API for easy e-mail (POP3, IMAP4) account creation. The CEmailAccounts API creates an account for incoming messages as well as for outgoing messages (SMTP) and assigns these two together to form a working account pair.
Here is a simple example on how to use this API:
#include <cemailaccounts.h>
TMsvId pop3Id;
TMsvId smtpId;
iPop3Mtm = static_cast<CPop3ClientMtm*>(iReg->NewMtmL(KUidMsgTypePOP3));
iSmtpMtm = static_cast<CSmtpClientMtm*>(iReg->NewMtmL(KUidMsgTypeSMTP));
CEmailAccounts* accounts = CEmailAccounts::NewLC();
//
// Create CImPop3Settings and CImSmtpSettings objects and insert your account settings.
// This step is omitted here for brevity.
//
//
// You also need to define a CImIAPPreferences object for the IAP to use with this account.
// This example does not show how to fill in the IAP UID into apUid. One possibility is to read this value from the
// CommsDB IAP table by a bearer.
//
TUint32 apUid;
// Create a new IAPChoice for the IAPPreferences object
TImIAPChoice apChoice;
apChoice.iIAP = apUid; //store IAP id
apChoice.iDialogPref = ECommDbDialogPrefPrompt; //prompt dialog
//CImIAPPreferences*
apPrefs = CImIAPPreferences::NewLC();
apPrefs->AddIAPL(apChoice);
// Now create actual services
//
TPopAccount popAcc;
popAcc = accounts->CreatePopAccountL(_L("POP3 acco"), *iPOP3Settings, *apPrefs, EFalse);
TSmtpAccount smtpAcc;
smtpAcc = accounts->CreateSmtpAccountL(popAcc, *iSmtpSettings, *apPrefs, EFalse);
pop3Id = popAcc.iPopService;
smtpId = smtpAcc.iSmtpService;
//
// Finally, this line sets the new SMTP service as the default sending service.
//
accounts->SetDefaultSmtpAccountL(smtpAcc);
No related wiki articles found