Mocor平台SC6531模块添加

Posted q10040

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mocor平台SC6531模块添加相关的知识,希望对你有一定的参考价值。

       

1.         创建模块文件夹(假设模块名为XXX,以下类同):

  a)         在“%工程目录%\MS_MMI\source\mmi_app\app”目录下创建模块文件夹“xxx”,并在其下创建名为“c”和“h”两个子文件夹,分别用于保存模块的源代码和头文件。

  b)        在“%工程目录%\MS_MMI\source\resource\mmi_res_128x64\xxx”目录下新建名为“MMI_RES_DEFAULT”的文件夹,并在其中创建“ANIM”、“DATA”、“IMAGE”三个子文件夹。(提醒:建立完毕后需加至相应的压缩包内)

2.         创建模块相关文件:

  a)         在“h”文件夹下分别创建以下文件:xxx_mdu_def.h、mmixxx_export.h、mmixxx_id.def、mmixxx_id.h、mmixxx_image.h、mmixxx_text.h,各文件功能简述如下:

  • xxx_mdu_def.h:模块资源定义(包含图片、字符串等)
  • mmixxx_export.h:模块外部接口
  • mmixxx_id.def:窗口ID定义
  • mmixxx_id.h:控件ID定义
  • mmixxx_image.h:图片ID定义,无须改动
  • mmixxx_menutable.def:
  • mmixxx_menutable.h:
  • mmixxx_menu_id.def:
  • mmixxx_nv.h:
  • mmixxx_text.h:字符串ID定义,无须改动

  b)        在“c”文件夹下分别创建以下文件:mmixxx_app.c、mmixxx_id.c、mmixxx_wintab.c,各文件功能简述如下:

  • mmixxx_app.c:定义模块功能函数,供外部调用
  • mmixxx_id.c:
  • mmixxx_menutable.c:
  • mmixxx_nv.c:
  • mmixxx_wintab.c:定义WINDOWS_TABLE及其回调函数

3.         在工程文件mmi_res_prj_def.h中添加XXX模块的ID:

RES_ADD_MODULE(MMI_MODULE_XXX,”\\xxx\\xxx_mdu_def.h”)         // MMI_MODULE_XXX为模块ID,”\\xxx\\xxx_mdu_def.h”为模块路径

4.         修改mk文件:

  a)         在resource.mk(路径:%工程目录%\make\resource)中增加模块定义路径和文件名:

l         在相应位置添加:MS_MMI/source/mmi_app/app/xxx/h \

l         在“SOURCE +=”表达式最后增加xxx_mdu_def.h

  b)        在app.mk(路径:%工程目录%\make\app)中增加模块定义路径和文件名:

l         在相应位置添加:MINCPATH += MS_MMI/source/mmi_app/app/xxx/h

l         在相应位置添加:MSRCPATH += MS_MMI/source/mmi_app/app/xxx/c

l         在“SOURCES =”表达式最后增加模块中所有c文件的文件名

 

特别声明:模块添加完毕后无法在mainapp.c之流中直接调用(即使是在其中包含了相应的头文件),调用模块还是得新建一级菜单后在其下(或在已有菜单下)附加模块功能。


添加模块需要修改工程中的文件罗列如下:

  • 在mainmenu_win.c的HandleMainMenuWinMsg()函数(文件1985行前后)中的switch(msg_id)结构中添加新case分支:

case ID_MAINMENU_MULTIMEDIA:

MMIDEMO_EnterMultimediaWin();

break;

         注意:需要包含mmidemo_export.h和mmidemo_menutable.h两个头文件

  • 在mmi_menutable.c的menu_mainmenu_icon [ ]数组(文件428行前后)中添加元素:

{ID_MAINMENU_MULTIMEDIA,TIP_NULL,{STXT_OK,TXT_NULL,STXT_RETURN},TXT_USER_MAIN_MULTIMEDIA,IMAGE_MAINMENU_ICON_MULTIMEDIA_1,0,0,MENU_NULL},

  注意:需要包含mmidemo_image.h、mmidemo_text.h和mmidemo_menutable.h 三个头文件

  • 在mmimain.c的InitMMIModule()函数(文件1746行前后)中添加模块初始化函数:

MMIAPIDEMO_InitModule();

  注意:需要包含mmidemo_export.h头文件

  运行效果:

   

以上是关于Mocor平台SC6531模块添加的主要内容,如果未能解决你的问题,请参考以下文章

添加平台时出错,graceful-fs 模块

无法将 FirebaseAnalytics 或 Crashlytics cocoapod 添加到 kotlin 多平台共享模块

windows sc 添加创建exe服务;

ORA-O6531: 引用未初始化的集合错误

PySpark Overwrite 添加了 sc.addPyFile

Cordova 无法添加插件:错误:找不到模块“unorm”