1.使用void mmi_frm_sms_new_sms_ind (void* inMsg),在此函数中拦截,对收到的短信做相关处理
此函数使用以下结构来装短信的内容
typedef struct
{
LOCAL_PARA_HDR
kal_uint8 fo;
kal_uint8 scts[7];
l4c_number_struct sca_number;
l4c_number_struct oa_number;//此结构包含发信人号码
kal_uint8 pid; /* smsal_pid_enum */
kal_uint8 dcs; /* smsal_dcs_enum */
kal_uint16 index;
kal_uint16 dest_port;
kal_uint16 src_port;
kal_uint8 mti;
kal_uint8 display_type;
kal_uint8 storage_type;
kal_uint32 concat_info;
kal_uint16 no_msg_data;
kal_uint8 msg_data[1];//内容指针
} mmi_sms_deliver_msg_ind_struct;
2.使用注册监听的方式拦截
使用以下函数蓝接听,对短信做相关处理,不过个人在用的时候发现虽然可以成功监听new message,但是收件箱内没有收到短信,不知道哪里出问题了,知道的朋友情留言下!!!!
void mmi_frm_sms_reg_msg_check (PsExtPeerIntFuncPtr action, PsFuncPtrFuncPtr callback)