1. To design an application one must follow the sequence as described:
A. Write an Initialization function to register the various event handlers.
B. Write a populate function to register various string and image elements for the
application.
C. Write highlight handlers for function registered.菜单项的功能,当用户选择菜单项后执行的函数。
D. Write the Entry functions。入口函数
E. Write the Exit function。出口函数
F. Write the business logic to call between various entry functions.
2. 手机程序初始化
A. there are three functions which allow to add init functions because not every application needs to be initialized if the SIM is not present..
a. InitializeAll
b. InitAllApplications
c. InitInsertSimApp
B. Here are the steps to show when these three functions are called..
a. Power on the handset..
b. InitializeAll() is called..
c. Start to play power on animation..
d. SIM is present or not present notification to MMI..
e. Stop playing power on animation..
f. If SIM is present, InitAllApplications() is called. If SIM is not present, InitInsertSimApp() is called..
C. There is a simple rule of where to add your initialization function..
a. If your application always works no matter SIM is present or not, please add it in InitializeAll()..
b. If your application is SIM-dependent, please add it in InitAllApplications() or InitInsertSimApp()..
3. 程序入口,程序导读
-》MMI任务入口:
..\plutommi\mmi\Framework\Tasks\TasksSrc中文件MMITask.c函数MMI_task。
-》MMI任务的建立:
..\plutommi\mmi\Framework\Osl\OslSrc中文件pixtelMMI.c函数WinMain调用InitApplication函数,
在该函数中建立MMI任务,建立任务的接口函数为:osl_create_task。
-》MMI任务信息:
{"MMI TASK"(任务名称), "MMI Q"(队列名称), 127(优先级), 4096(堆栈大小),
MAX_PRT_NODES(队列结点个数), MMI_task(任务入口)},
-》MMI模块入口:
..\plutommi\mmi中为MMI各个模块的代码。
比如闹钟模块,源代码在..\plutommi\mmi\Alarm\AlarmSrc中,
头文件在..\plutommi\mmi\Alarm\AlarmInc中。
首先找到初始化闹钟的函数AlmInit,该函数定义在选择闹钟菜单项时调用函数HighlightAlmMenu进入闹钟功能。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=2149935