开机后,检测SIM卡错误(无卡),进入:
EntryScrnSimErrorScreen()
ShowCategory123Screen()显示信息:插入SIM卡。
左软件:选项
右软件:紧急
设置按键响应:
SetLeftSoftkeyFunction(EntryScrSimOptionMenu, KEY_EVENT_UP);
SetRightSoftkeyFunction(ShowMakeSOSCallScr, KEY_EVENT_UP);
SetGroupKeyHandler(
HandleInsertSIMScrDigitEntry,
InsertSIMScreenDigits,
MAX_INSERT_SCR_DIGITS - 1,
KEY_EVENT_DOWN);
1.按下右软件,直接拨预先设置的紧急号码。
进入:ShowMakeSOSCallScr(),
在这个函数中,首先预先设置:
AnsiiToUnicodeString(g_idle_context.DialPadCallBuffer, "112");
然后显示:ShowCategory165Screen():拨紧急号码?
注册响应:SetLeftSoftkeyFunction(EntryScrEmergencyCallDialing, KEY_EVENT_UP);
SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);
按下左软件(选择“是”),进入:
EntryScrEmergencyCallDialing()
if (CheckValidEmergencyNo1(g_idle_context.DialPadCallBuffer))判断是否是紧急号码
如果是紧急号码,而且网络可用,就调用:MakeCall()拨号。
如果不是紧急号码,就显示错误信息。
2.手动输入号码,然后按下【SEND】键拨号(只能是紧急号码才能响应),进入:
HandleInsertSIMScrDigitEntry()
首先清空号码缓冲区:sprintf(g_idle_context.DialPadCallBuffer, "");
调用:DialSOSNumber()
显示输入的号码,设置左软件:保存,右软件:返回。
注册案件响应:
SetKeyHandler(EntryScrEmergencyCallDialing, KEY_SEND,
KEY_EVENT_UP);
SetCategory16RightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);
SetLeftSoftkeyFunction(IdleDialPadSavePhoneBook, KEY_EVENT_UP);
此时,如果按下[SEDN]键,就进入:EntryScrEmergencyCallDialing()。判断号码,然后拨号。
OVER!