mtk平台相关问题总结|mtk架构分析
0赞mtk平台,相关问题总结
编译前请将..\custom\common\nvram_lid_statistics.h文件和tst文件夹的属性、plutommi\Customer\Customize下的GCML.txt改为可读写。
Release 版本的时候,MMI/MiscFramework/MiscFrameworkSrc/UCS2.c不能删除,因为,resgen要用倒ucs2.c
1:深路经覆盖浅路径文件
2:只有ADD_APPLICATION_MENUITEM,ADD_APPLICATION_MENUITEM2两种添加菜单方式
3:添加菜单的时候一定要,指定子菜单的个数
4:CmsWapMmsAdp.h文件中,如果是26项目,不要打开28开关
#define SUPPORT_MTK_6226
#if 0
#ifdef SUPPORT_MTK_6228
#define CMS_SURPPORT_PNG_BMP
#endif
#endif
5:Res_SAT.c中,如果用 移软的 库,要将
#ifndef CMS_NEW_APP
ADD_APPLICATION_MENUITEM((SERVICES_WAP_MENU_ID,MAIN_MENU_SERVICES_MENUID,0,SHOW,NONMOVEABLE|SHORTCUTABLE,DISP_LIST,
SERVICES_WAP_STRING_ID,SERVICES_WAP_IMAGE_ID));
#endif
注释掉
6ataAccountDef.h中添加
#include "custom_mmi_default_value.h"
用来防止
#ifdef MAX_GPRS_USER_NAME_LEN
#define MAX_GPRS_USERNAME MAX_GPRS_USER_NAME_LEN-1
#else
#define MAX_GPRS_USERNAME 15
#endif
#ifdef MAX_GPRS_PASSWORD_LEN
#define MAX_GPRS_USERPASSWD MAX_GPRS_PASSWORD_LEN-1
#else
#define MAX_GPRS_USERPASSWD 15
#endif
的偏差
mtk架构分析
1.1启动流程
1.1.1模拟器线程创建
由于代码是在模拟器中执行,所以代码中都带有一些win32程序的特征。比如模拟器的启动就是用典型的win32程序方式。在PixtelMMI.cpp文件里的函数WinMain就是模拟器的启动入口。里面包括了InitInstance和模拟器的消息循环,这些都是win32程序通用的,我们需要注意的只是InitApplication();
这个InitApplication();函数创建了几个线程,用这几个线程来模拟手机中的不同的任务线程。并且为这些任务创建了不同的消息队列。这些创建出来的线程的一切相关资料都保存在task_info_g1(一个结构数组)里面。包括消息队列的信息。此外,它还设置了一个timer,这个timer是模拟器用来模拟整个时钟震荡用的,以后需要使用timer的时候都是使用它的分频,它的周期
是100ms,不过这只是系统模拟的而已。这些创建的线程中其中有一个是主要的,此线程的入口函数是MMI_task,它在MMITask.c里面。
mtk架构分析:
http://bbs.16rd.com/forum.php?mod=viewthread&tid=454043&fromuid=28165
(出处: 一牛网)