To get SMS entries in the inbox

//  inbox context
CMsvEntry *  entry  =  CMsvEntry::NewL( * iSession, KMsvGlobalInBoxIndexEntryId, TMsvSelectionOrdering());
CleanupStack::PushL(entry);

//  get list of SMS entries in inbox
CMsvEntrySelection *  children  =  entry -> ChildrenWithMtmL(KUidMsgTypeSMS);
CleanupStack::PushL(children);

:
:

CleanupStack::PopAndDestroy(
2 );  //  entry, children


To access contents of message:


//  SMS arrived
CBaseMtm *  smsMtm  =  iMtmReg -> NewMtmL(KUidMsgTypeSMS);
CleanupStack::PushL(smsMtm);

//  entryId extracted from 'children' list 
TMsvEntry msvEntry  =  (iSession -> GetEntryL(entryId)) -> Entry();
smsMtm
-> SwitchCurrentEntryL(entryId);
smsMtm
-> LoadMessageL();

//  sender info stored in details
TFileName sender  =  msvEntry.iDetails;

//  body
TFileName body  =  smsMtm -> Body().Read( 0 );

:
:

CleanupStack::PopAndDestroy(smsMtm);
 
//  first take a handle to folder
TMsvSelectionOrdering sort;
sort.SetShowInvisibleEntries(ETrue); 
//  we want to handle also the invisible entries

//  Take a handle to the folder entry
CMsvEntry *  parentEntry  =  CMsvEntry::NewL( * iSession, KMsvGlobalInBoxIndexEntryId, sort);
// CMsvEntry* parentEntry = CMsvEntry::NewL(*iSession, aFolder, TMsvSelectionOrdering());
CleanupStack::PushL(parentEntry);

//  A selection of all MMS entries
CMsvEntrySelection *  entries  =  parentEntry -> ChildrenWithMtmL(KUidMsgTypeSMS);
CleanupStack::PushL(entries);

//  go through the selection and read descriptions into a list
for (TInt i  =   0 ; i  <  entries -> Count(); i ++ )
{
// we can use the mtm to go through the selection.

iSMSmtm
->SwitchCurrentEntryL( (*entries)[i] ); // this is where i get the unhandled exception
iSMSmtm->LoadMessageL();
aDescriptorList.AppendL(iSMSmtm
->Body().Read(i, 30));
}


CleanupStack::Pop(
2 );  //  parentEntry, entries
delete parentEntry;

return  entries;  //  Caller must free this memory after use!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值