SKYENGINE API 参考手册返回目录 |
(int32 code =
4012,
int32 mr_platEx
uint8* input,
int32 input_len,
uint8** output,
int32* output_len,
MR_PLAT_EX_CB*
cb
)
Description
修改,删除,添加电话本条目。
Parameters
Name
Description
input
T_MR_PHB_SET_ENTRY_REQ数据结构
input_len
T_MR_PHB_SET_ENTRY_REQ数据结构大小
output
无
output_len
无
cb
无
MR_PHB_SUCCESS (0+MR_PLAT_VALUE_BASE) 请求已经发出
MR_PHB_ERROR 请求发送失败
注:这个操作是一个异步的过程,操作的结构会通过mr_event的形式上送。
具体看事件说明电话本接口。
T_MR_PHB_SET_ENTRY_REQ数据结构:
typedef struct
{
U16 storage; //信息存储的位置,sim卡,还是手机
U16 index; //要修改的条目在列表中的索引(0开始),如果是0xfffff表示增加一个条目。
T_MR_PHB_ENTRY entry; //具体的信息
}T_MR_PHB_SET_ENTRY_REQ;
注:当具体信息中的号码和名称为空的时候表示要删除index指向的那个条目。
T_MR_PHB_ENTRY数据结构:
typedef struct
{
S8 name[MR_PHB_MAX_NAME];
S8 number[MR_PHB_MAX_NUMBER];
S8 homeNumber[MR_PHB_MAX_NUMBER];
S8 officeNumber[MR_PHB_MAX_NUMBER];
S8 faxNumber[MR_PHB_MAX_NUMBER];
S8 emailAddress[MR_PHB_MAX_NUMBER];
}T_MR_PHB_ENTRY;电话本接口中对应的参数的定义:
#define MR_PHB_MAX_NAME (36*2) //暂时定位24个字节,12个汉字.
#define MR_PHB_MAX_NUMBER (48*2)//暂时定位可输入40个字节.40个数字
#define MR_PHB_MAX_SEARCH_PATTERN (60*2)
/*mrp code*/
#define ADD_NAME "addPHB"
#define ADD_NUMEBER "56231023"
T_MR_PHB_SET_ENTRY_REQ setReq = { 0 };
T_MR_PHB_SET_ENTRY_RSP *setRsp = NULL;
int32 len;
memset( &setReq, 0 , sizeof ( T_MR_PHB_SET_ENTRY_REQ ) );
str2wstr( (PCSTR)ADD_NUMEBER, (PWSTR)setReq.entry.number,(Sint32)MR_PHB_MAX_NUMBER );
str2wstr( (PCSTR)ADD_NAME, (PWSTR)setReq.entry.name,(Sint32)MR_PHB_MAX_NAME );
setReq.index = (U16)0xffff; //means add item in phone book.
setReq.storage = 3;
mrc_platEx(4012, (uint8*)&setReq, sizeof ( T_MR_PHB_SET_ENTRY_REQ ), (uint8**)&setRsp, &len, NULL);