发送SMS_MMS时,可以选择Optional number(10A)

1 修改函数mmi_uc_search_phb_recipient,将其中如下Code:
cui_phb_list_select_contact_set_field_filter(g_uc_p->main.select_contact_cui_gid,
SRV_PHB_ENTRY_FIELD_NUMBER | SRV_PHB_ENTRY_FIELD_EMAIL);
修改为:
cui_phb_list_select_contact_set_field_filter(g_uc_p->main.select_contact_cui_gid,
SRV_PHB_ENTRY_FIELD_GSM_NUM | SRV_PHB_ENTRY_FIELD_EMAIL);
2 修改函数mmi_phb_mark_several_select_field,将其中如下Code:
case SRV_PHB_ENTRY_FIELD_NUMBER | SRV_PHB_ENTRY_FIELD_EMAIL:
修改为:
case SRV_PHB_ENTRY_FIELD_GSM_NUM | SRV_PHB_ENTRY_FIELD_EMAIL:
3 修改函数mmi_uc_handle_addr_callback,将其中如下Code:
if (num_type[index] == MMI_PHB_NUMBER_TYPE_NUMBER)
修改为:
if (num_type[index] & (MMI_PHB_NUMBER_TYPE_NUMBER |
MMI_PHB_NUMBER_TYPE_HOME_NUMBER | 
MMI_PHB_NUMBER_TYPE_OFFICE_NUMBER | MMI_PHB_NUMBER_TYPE_FAX_NUMBER))
4 修改函数mmi_phb_mark_several_for_msg_get_number,如下:
void mmi_phb_mark_several_for_msg_get_number(U8 *dest, U8 max_dest_len, U16 PhbIndex,
U8 num_type)
{
/*----------------------------------------------------------------*/
/* Local Variables  */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
switch (num_type)
{
case MMI_PHB_NUMBER_TYPE_NUMBER:
{
U16 number[MMI_PHB_NUMBER_LENGTH + 1 + 1];
srv_phb_get_number(PhbIndex, number, MMI_PHB_NUMBER_LENGTH + 1);
mmi_phb_truncate_number_field_to_max_len((U16 *) dest, number, max_dest_len);
break;
}
//add the following code
#if 1
case MMI_PHB_NUMBER_TYPE_HOME_NUMBER:
{
U16 number[MMI_PHB_NUMBER_LENGTH + 1 + 1];
srv_phb_get_optional_number(PhbIndex, SRV_PHB_ENTRY_FIELD_HOME, number, NULL,
MMI_PHB_NUMBER_LENGTH + 1);
mmi_phb_truncate_number_field_to_max_len((U16 *) dest, number, max_dest_len);
break;
}
case MMI_PHB_NUMBER_TYPE_OFFICE_NUMBER:
{
U16 number[MMI_PHB_NUMBER_LENGTH + 1 + 1];
srv_phb_get_optional_number(PhbIndex, SRV_PHB_ENTRY_FIELD_OFFICE, number, NULL,
MMI_PHB_NUMBER_LENGTH + 1);
mmi_phb_truncate_number_field_to_max_len((U16 *) dest, number, max_dest_len);
break;
}
case MMI_PHB_NUMBER_TYPE_FAX_NUMBER:
{
U16 number[MMI_PHB_NUMBER_LENGTH + 1 + 1];
srv_phb_get_optional_number(PhbIndex, SRV_PHB_ENTRY_FIELD_FAX, number, NULL,
MMI_PHB_NUMBER_LENGTH + 1);
mmi_phb_truncate_number_field_to_max_len((U16 *) dest, number, max_dest_len);
break;

#endif
//end add
#if !defined(__MMI_PHB_NO_OPTIONAL_FIELD__) 
case MMI_PHB_NUMBER_TYPE_EMAIL_ADDRESS:
{
U16 email[MMI_PHB_EMAIL_LENGTH + 1];
srv_phb_get_email_address(PhbIndex, email, MMI_PHB_EMAIL_LENGTH);
mmi_ucs2ncpy((S8 *) dest, (S8 *) email, max_dest_len);
break;
}
#endif
#if !defined(__MMI_PHB_NO_OPTIONAL_FIELD__)
#if defined(__MMI_PHB_OPTIONAL_FIELDS_2ND_EMAIL__)
case MMI_PHB_NUMBER_TYPE_EMAIL_ADDRESS_2:
{
U16 email[MMI_PHB_EMAIL_LENGTH + 1];
srv_phb_get_email_address2(PhbIndex, email, MMI_PHB_EMAIL_LENGTH);
mmi_ucs2ncpy((S8 *) dest, (S8 *) email, max_dest_len);
break;
}
#endif
#endif /* !defined(__MMI_PHB_NO_OPTIONAL_FIELD__) */
default:
break;
}
}
5 修改函数mmi_uc_search_phb_recipient,将其中如下Code:
if(g_uc_p->srv_msg_type->caller_specific_msg_type == MMI_UC_MSG_TYPE_SMS_ONLY)
{
cui_phb_list_select_contact_set_field_filter(g_uc_p->main.select_contact_cui_gid,
SRV_PHB_ENTRY_FIELD_NUMBER);
}
修改为:
if(g_uc_p->srv_msg_type->caller_specific_msg_type == MMI_UC_MSG_TYPE_SMS_ONLY) 
{
cui_phb_list_select_contact_set_field_filter(g_uc_p->main.select_contact_cui_gid,
SRV_PHB_ENTRY_FIELD_GSM_NUM);
}
二、针对非短彩合一的版本
1. 按照短彩合一版本的第1~5步修改Code
2. 修改函数cui_sms_recipient_add_from_contacts,将其中如下Code: 
filter_type = SRV_PHB_ENTRY_FIELD_NUMBER;
修改为:
filter_type = SRV_PHB_ENTRY_FIELD_GSM_NUM;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值