现在的位置: 首页 > 综合 > 正文

MTK常用函数快速查找(3)

2013年12月06日 ⁄ 综合 ⁄ 共 3806字 ⁄ 字号 评论关闭

短信: NVRAM_EF_SMSAL_SMS_TOTAL 手机短信的容量定义  CM_SMS_MAX_MSG_NUM 短信总容量定义(sim + phone)

NVRAM_EF_PHB_COMPARE_DIGIT_DEFAULT                电话本比较的位数

#define PHB_VCARD_FOLDER    "//x0D//x54//x47//x72//x39//x59//x00//x00////"  // 名片夹    UNICODE

ShowChargingCompleteScr  关机充电结束
IdleScreenBatteryFullCharged 开机充电结束
set_dt_display    设置待机时间显示位置
gui_clock_show         显示待机时间
update_main_LCD_date_time 待机时间更新
hide_main_LCD_date_time;    /* set function pointer of hide func of date time of main lcd */
show_main_LCD_date_time; /* set func piinter of show date time of main lcd */
update_main_LCD_date_time;        /* set function of upadet date time of main lcd */

void gui_draw_single_line_one_line(single_line_input_box *b, single_line_input_box_show_struct *bs)  单行输入框重画函数
date_input_register_keys
time_input_register_keys //注册修改日期、时间界面的处理函数

mmi_input_box_msg_call_back_ems        //ems短信
wgui_EMS_redraw_remaining_characters_display //显示输入短信字串
mmi_imm_get_curr_input_type /* The current input type. */    
mmi_imm_get_curr_input_mode /* The current input mode. */ //取得当前输入法
redraw_EMS_inputbox 短信输入inputbox
wgui_EMS_redraw_input_information_bar

主菜单相关
MMI_features_GUIPLUTO.h  __MMI_BI_DEGREE_MAIN_MENU_STYLE__  //主菜单样式  __MMI_MAINMENU_TYPE__
initalize_main_menu_application()注册主菜单得各个高亮函数
CFG_UI_MAINMENU_SHOW_STATUS_ICON  显示/隐藏主菜单的status
CFG_UI_MAIN_MENU_NORMAL_IMAGE_CLIP_HEIGHT        //
CFG_UI_MAIN_MENU_HIGHLIGHTED_IMAGE_HEIGHT        //主菜单显示高度
ShowCategory14Screen
dm_setup_and_draw_matrix_menu
mtk_UI_show_fixed_matrix_menu  矩阵菜单

MMICheckDiskDisplay 显示开机logo函数   IMG_BOOTUP_SCANNING_LOGO 开机动画图片ID

 

短信发送实例

// 短信群发
 ReleaseEMSEditBuffer();
 pEMS = (EMSData*)GetEMSDataForEdit (0, 1);
 ASSERT(pEMS != NULL);

 result = AppendEMSString (IMM_INPUT_TYPE_SENTENCE, pEMS, (U8*)sSosSMSContent, SMSAL_UCS2_DCS, NULL); 
 
 for (i = 0; i < MAX_SEND_TO_MANY_ITEMS; i++)
 {
  memset(g_msg_cntx.msg_send_info.PhbNumber[i], 0, sizeof(g_msg_cntx.msg_send_info.PhbNumber[i]));
 }
 
 for (i = 0; i < MAX_SOS_NUMBER; i++)
 {
  if(UCS2Strlen((S8*)gSOSNumList[i]) != 0)
  {
   memcpy(g_msg_cntx.msg_send_info.PhbNumber[i], gSOSNumList[i], sizeof(gSOSNumList[i])); 
  }
 }

 mmi_msg_send_msg_to_many();

单个短信发送
 ReleaseEMSEditBuffer();
 pEMS = (EMSData*)GetEMSDataForEdit (0, 1);
 ASSERT(pEMS != NULL);

 g_msg_cntx.sendSaveStatus = SEND_SAVE_NIL;
 memset (g_msg_cntx.smsPhoneNumber, 0, sizeof(g_msg_cntx.smsPhoneNumber));
 mmi_ucs2cpy(g_msg_cntx.smsPhoneNumber, (S8 *)smsPhoneNum);

 PendingSaveSendData.totalSegments=1;
 PendingSaveSendData.mti=SMSAL_MTI_SUBMIT;//MS->SC
 memset(PendingSaveSendData.TPUD, 0,sizeof(PendingSaveSendData.TPUD));

 for (i=1; i {
  PendingSaveSendData.TPUDLen[i]=0;
  PendingSaveSendData.TPUD_p[i]=NULL;
  PendingSaveSendData.l4index[i]=SMS_INVALID_INDEX;
  PendingSaveSendData.TPUD_udhi[i]= FALSE;
 }

 g_msg_cntx.sendMessageCase = SEND_CASE_SEND_ONLY;

 result = AppendEMSString (IMM_INPUT_TYPE_SENTENCE, pEMS, (U8*)sSosSMSContent, SMSAL_UCS2_DCS, NULL); 
 if(result)
 {
  mmi_frm_sms_send_struct * sendData=OslMalloc(sizeof(mmi_frm_sms_send_struct));
  char Number[MAX_DIGITS_SMS];
  char* pNumber = (char*)Number;
  int numlen = 0;

  ASSERT(sendData != NULL)

  memset(Number, 0, sizeof(Number));
  numlen = mmi_ucs2_to_asc((S8 *)Number, (S8 *)smsPhoneNum);

  numlen = strlen(pNumber) > MAX_DIGITS_SMS ? MAX_DIGITS_SMS : strlen(pNumber);

  memset((S8*)sendData, 0, sizeof(mmi_frm_sms_send_struct));
  memset(sendData->number, 0, MAX_DIGITS_SMS);

  memcpy(sendData->number, pNumber,numlen);

  mmi_frm_sms_send_sms(SosSmsSendResponse,  MOD_MMI,  sendData);

  OslMfree(sendData);  
 }//begin send message,but not sure send successfully

void SosSmsSendResponse(void* number, module_type mod, U16 result)
{
 U16 currentSCRID ;
 U8 data; 
 S16 error;

 currentSCRID = GetActiveScreenId();
 mmi_frm_sms_delete_screen_history();

 if((currentSCRID == SCR_ID_MSG_SENDING) || (currentSCRID == SCR_ID_MSG_PROCESSING))
  GoBackHistory();

 switch(result)
 {
  case MMI_FRM_SMS_OK:
   //write value of user use state
  
   AlmEnableSPOF(); 
   break;
  default:
   AlmEnableSPOF(); 
   break;
 }
 memset(g_msg_cntx.smsPhoneNumber, 0, sizeof(g_msg_cntx.smsPhoneNumber)); 
}

 

【上篇】
【下篇】

抱歉!评论已关闭.