没找到相应的资料,我是这样做的
ISHELL_CreateInstance(pMe->a.m_pIShell, AEECLSID_SMSSTORAGE , (void**)&pMe->pISMSStorage);
ISMSSTORAGE_QueryInterface (pMe->pISMSStorage, AEEIID_MODEL , (void **)&pMe->pIModel);
IModel_AddListener(pMe->pIModel, pMe->pIModelLst);
ISMSSTORAGE_DeleteAll(pMe->pISMSStorage, (AEESMSStorageType)AEESMS_NV_CDMA, (AEECallback *)delete_cb, &(pMe->p_er));
前3步都可以,最后一步就崩了。。。
看reference里面的介绍,执行完成delete后,会发送一个EVT_MDL_SMSSTORAGE_DELETE_ALL到client, 这个client指的是当前application吗?这个event是需要listeners来接收吗?那ISMSSTORAGE_DeleteAll中定义的callback function又有什么作用呢?这个流程具体是怎么样的?
谁有这方面的资料,或者知道怎么做的,请留言,非常感谢。。。
对了,还有brew手机有lock的api吗?
delete_cb是删除成功之后的Callback吧。
是不是这个Callback没有进行设置啊,之后调用时崩溃了。
struct _AEECallback
{
AEECallback* pNext;
void* pmc;
CallbackCancelFunc* pfnCancel;
void* pCancelData;
CallbackNotifyFunc* pfnNotify;
void* pNotifyData;
void* pReserved;
};
需要把pfnNotify和pNotifyData进行赋值
pfnNotify是Callback函数。
pNotifyData是Callback函数的参数。
你的delete_cb是一个函数名还是AEECallback类型的指针?
如果是函数名是会出错的。
首先MIF文件中设置Dependencies
然后修改代码