下面这个函数可以写入短信的内容和要发送到的号码直接发短信出去
void mmi_msg_entry_phone_write_msg(void)
{
//S8 *templ;
EMSData *pEMS;
history temphistory;
//U8 result = 0;
//U16 templateCharNum;
//U8 *handledBuffer;
char sendmessage[140];
U8 ListSmsNumber[MAX_NUMBER];
U8 index;
char separator[1] = {','};
char temp_separator[2] = {0};
// char tempNumber[42];
//memset(&templ, 0, sizeof(templ));
//mmi_ucs2cpy((S8*)templ,(S8*)message);
//templ = message;//GetString(STR_SMS_TEMPLATE_11);
//templateCharNum = pfnUnicodeStrlen((PS8) templ);
kal_prompt_trace(MOD_ENG,"mmi_msg_entry_phone_write_msg ");
memset(sendmessage, 0, sizeof(sendmessage));
//memset(sendphone, 0, sizeof(sendmessage));
memset(&temphistory, 0, sizeof(temphistory));
// memset(tempNumber, 0, sizeof(tempNumber));
//handledBuffer = OslMalloc((templateCharNum * 2 + 1) * ENCODING_LENGTH);
//memset((S8*) handledBuffer, 0, ((templateCharNum * 2 + 1) * ENCODING_LENGTH));
AnsiiToUnicodeString((S8*)temp_separator, (S8*)(separator));
//下面这段是写短信的内容
//for (index=1; index < V01_set_counter; index++)
for (index=1; index < 4; index++)
{
UCS2Strncat((PS8)sendmessage, (PS8)V01_set_data[index].phone_number,11);
UCS2Strncat((PS8)sendmessage, (PS8)temp_separator,1);
if(V01_set_data[index].enable_video)
{
memset(selectNote, 0,sizeof(selectNote));
mmi_ucs2cpy(
(S8*) selectNote,
(S8*) g_sms_cntx.Note[4]);
UCS2Strncat((PS8)sendmessage, (PS8)selectNote,UCS2Strlen(selectNote));
}
else
{
memset(selectNote, 0,sizeof(selectNote));
mmi_ucs2cpy(
(S8*) selectNote,
(S8*) g_sms_cntx.Note[3]);
UCS2Strncat((PS8)sendmessage, (PS8)selectNote,UCS2Strlen(selectNote));
}
}
ReleaseEMSEditBuffer();
GetEMSDataForEdit(&pEMS, 1);
EMSSetDCS(pEMS, SMSAL_UCS2_DCS);
//mmi_frm_sms_handle_extension_char((U16*) handledBuffer, (U16*) templ, templateCharNum);
AppendCategory28String(
INPUT_TYPE_ALPHANUMERIC_SENTENCECASE,
pEMS,
(U8*) sendmessage,
temphistory.guiBuffer);
//AppendCategory28String(INPUT_TYPE_ALPHANUMERIC_SENTENCECASE, pEMS, (U8*) sendtext, temphistory.guiBuffer);
//OslMfree(handledBuffer);
//AlmDisableSPOF();
#ifdef __MMI_DUAL_SIM_MASTER__
MTPNP_AD_Free_Channel(MTPNP_AD_SMS_CHANNEL);
if(mmi_bootup_is_sim_valid())
{
MTPNP_AD_Set_Channel(MTPNP_AD_SMS_CHANNEL, MTPNP_AD_CHANNEL_MASTER); //sim1
}
else if(mmi_bootup_is_sim2_valid())
{
MTPNP_AD_Set_Channel(MTPNP_AD_SMS_CHANNEL, MTPNP_AD_CHANNEL_SLAVE); //sim2
}
#else
if(mmi_bootup_is_sim_valid())
{
}
#endif
else
{
DisplayPopup(
(PU8) GetString(STR_GLOBAL_ERROR),
IMG_GLOBAL_UNFINISHED,
1,
MESSAGES_POPUP_TIME_OUT,
(U8) ERROR_TONE);
return ;
}
g_msg_cntx.sendMessageCase =SEND_CASE_SEND_FROM_PHB;
g_msg_cntx.msg_send_info.CurrSendSmsNumbers = 0;
g_msg_cntx.msg_send_info.TotalSendSmsNumbers = 1;
kal_prompt_trace(MOD_ENG,"mmi_msg_entry_error_write_msg Phone_Number = %s",Phone_Number);
//mmi_asc_to_ucs2((S8 *) ListSmsNumber, (S8 *)Phone_Number);
mmi_ucs2cpy((PS8)g_msg_cntx.smsPhoneNumber, (PS8)(Phone_Number)); //电话号码
mmi_msg_send_msg_req((U8*) g_msg_cntx.smsPhoneNumber, MMI_FRM_SMS_INVALID_INDEX, 1);
}