6236小结

在mtk6236 11A中添加模块Helloworld(自身程序已经写好):
一、 将Helloworld文件夹放到code\venusmmi\app\Cosmos 下
二、 修改code\make\venus\cosmos_app下的四个文件(
注意:.mak文件中以下三处均要添加路径:
SRC_LIST +=
INC_DIR +=
SRC_PATH += )
三、 在 vapp_package_res.h 中注册APP的ID ——————VFX_APP_RES_DECLARE(VAPP_HELLOWORLD, 20, "HelloWorld\\res\\")
VFX_APP_RES_DECLARE(VCUI_HELLOWORLD, 20, "HelloWorld\\res\\")
四、 在vtst_rt.h文件中声明入口函数————
// Cosmos APP entry point
#ifdef __COSMOS_MMI_PACKAGE__
/* Please add cosmos app entry point here... */


VtstTestResultEnum vtst_rt_vapp_helloworld(VfxU32 param); //luqiangxin
#endif /*__COSMOS_MMI_PACKAGE__*/
并在cosmos中关联————————
// Cosmos APP entry
/* Please add Cosmos APP entry here */
#ifdef __COSMOS_MMI_PACKAGE__
VTST_BEGIN_DEF_MENU(L"Cosmos", cosmos)

.
VTST_DEF_ITEM_TEST(L"Hello World", vtst_rt_vapp_helloworld, 0) //luqiangxin

五、 在mmi_res_range_def.h中对APP的ID的定义______
RESOURCE_BASE_ENUM_BEGIN()
/**************************************************************************************
* Declare resource ID range below
**************************************************************************************/


RESOURCE_BASE_RANGE(APP_HELLOWORLD, 100), //luqiangxin


/**************************************************************************************
* Declare resource ID range above
**************************************************************************************/
RESOURCE_BASE_ENUM_END()
并在此文件中定义APP____
RESOURCE_BASE_TABLE_BEGIN()
/****************************************************************************
* HelloWorld luqiangxin RESOURCE_BASE_RANGE(VAPP_HELLOWORLD,
*****************************************************************************/
#define HELLOWORLD_BASE ((U16) GET_RESOURCE_BASE(APP_HELLOWORLD))
#define HELLOWORLD_BASE_MAX ((U16) GET_RESOURCE_MAX(APP_HELLOWORLD))
RESOURCE_BASE_TABLE_ITEM_PATH(APP_HELLOWORLD, "..\\venusmmi\\app\\Cosmos\\HelloWorld\\res")


RESOURCE_BASE_TABLE_END()

六、修改Helloworld模块下的.res文件——————
#include "mmi_features.h"
#include "custresdef.h"







HELLO

RES_IMG_ROOT"\\\\Helloworld\\\\Hello.gif"

MAGE>







七、 添加图片到相应的文件路径下(压进压缩包里)
添加字符串资源到code\plutommi\Customer\CustResource\PLUTO_MMI下的ref_list.txt里面,格式很严格,不同内容之间相隔的是一个Tab而不是空格,加多一个空格就会导致
编译不了资源,最好复制原来写好的行,再把内容改成自己的(字符串放在Helloworld下的ref_list.txt时,字符串编译不了,暂时还不知道什么原因)
八、 regen (重新编译资源)


在setting下添加子菜单:修改模块下的.res文件添加图片、字符串ID 然后到Vapp_setting_config.h中添加子菜单(添加字符串ID时需要把原有的一个菜单注释掉,
否则生成的相关的文件里面没有新增的字符串,可能是菜单的子菜单个数已被设定)

一些报错:
1、在VS2008中编译时出现fatal error LNK1168: 无法打开 .\Debug/MoDIS.exe 进行写入 进入任务管理器,把MoDIS.exe给关了,重新编译,OK了
2、 regen是出现Output CustENFBImgMap.c.......DONE 时卡住不能往下执行时,很可能是在code\plutommi\Customer\CustResource\PLUTO_MMI下的ref_list.txt里面添加
字符串资源时格式出现了错误。
3、 regen时出现 Error in make .c to .i file的报错 查regen_xml_files.log:mak[1]:***[debug\res\vapp\vapp_helloworld.i] Error 1 很可能是在
修改Helloworld下的.res文件时把 RES_IMG_ROOT"\\\\Helloworld\\\\Hello.gif" 里面的格式弄错了

添加MyFirstApp时出现以下报错:
In file included from ../../../venusmmi/app/common/interface/vapp_res.h:82,
from ../../mmi/inc/mmi_res_range_def.h:2158,
from ../../framework/interface/MMIDataType.h:1187,
from ResgenXML/ResgenSrc/mmi_rp_audio.c:113:
../../../venusmmi/app/cosmos/interface/app/vapp_package_res.h:16: error: redefinition of `APP_MY_FIRST_APP'
../../mmi/inc/mmi_res_range_def.h:1785: error: `APP_MY_FIRST_APP' previously defined here
../../../venusmmi/app/cosmos/interface/app/vapp_package_res.h:16: error: redefinition of `RESOURCE_BASE_APP_MY_FIRST_APP'
../../mmi/inc/mmi_res_range_def.h:1785: error: `RESOURCE_BASE_APP_MY_FIRST_APP' previously defined here
../../../venusmmi/app/cosmos/interface/app/vapp_package_res.h:16: error: redefinition of `RESOURCE_BASE_APP_MY_FIRST_APP_END'
../../mmi/inc/mmi_res_range_def.h:1785: error: `RESOURCE_BASE_APP_MY_FIRST_APP_END' previously defined here


2011.9.27

相关文档
最新文档