MSTAR平台开发入手简中版

上传人:飞*** 文档编号:34311389 上传时间:2018-02-23 格式:PPT 页数:87 大小:2.29MB
返回 下载 相关 举报
MSTAR平台开发入手简中版_第1页
第1页 / 共87页
MSTAR平台开发入手简中版_第2页
第2页 / 共87页
MSTAR平台开发入手简中版_第3页
第3页 / 共87页
MSTAR平台开发入手简中版_第4页
第4页 / 共87页
MSTAR平台开发入手简中版_第5页
第5页 / 共87页
点击查看更多>>
资源描述

《MSTAR平台开发入手简中版》由会员分享,可在线阅读,更多相关《MSTAR平台开发入手简中版(87页珍藏版)》请在金锄头文库上搜索。

1、Demo App 快速指导 Sunny Wang(王乔),2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,2,内容,MAE平台简介State machine(状态机)Widget/Container/Model(控件/容器/数据容器)View(视图)AP Manager(应用程序管理者)基于MAE平台设计第一个应用程序设计状态机用XFSM实现状态机用XRG装载资源编写代码在模拟器上运行,1 MAE平台简介,2018/2/23,Copyright 2008 MStar Semiconductor, I

2、nc. All rights reserved.,4,1.1 MAE平台架构,1.2 AP的组成,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,5,1.3状态机(State machine),状态(Mode)状态跳转( Transition )执行顺序( Sequence ),2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,6,1.3.1 状态和活动Mode and Activities,一个状态包含状

3、态名(Mode name)进入活动(Entry activity)退出活动(Exit activity),2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,7,1.3.2 状态跳转(Transition),状态跳转包含:源状态(Source Mode)目标状态(Destination Mode)跳转类型(Transition Type )事件/条件(Event /Condition):Internal, External行为(Action),2018/2/23,Copyright 2008 MStar

4、 Semiconductor, Inc. All rights reserved.,8,Source Mode,Target Mode,Event&Condition (optional),Run Action(optional),Exit Activities,Entry Activities,1.3.3 执行顺序(Execute sequence),进入退出函数和action的执行顺序执行Condition函数:return TRUE退出源状态(Exist 函数)执行Action函数进入目的状态(Entry函数),2018/2/23,Copyright 2008 MStar Semicon

5、ductor, Inc. All rights reserved.,9,1.4 XMMI UI layout,XMMI给AP提供了containers和widgets来设计UI layoutWidget是基本的UI单位,例如Image widget和Text widget等Container用来把多个widget (和container)放在一起组成一个显示单元UI flow是由View manager控制的多个View组成的Model是数据的容器,通常和Widget搭配使用。,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rig

6、hts reserved.,10,1.5 Widget,显示数据处理事件只知道自己的大小而不知道自己的位置必须放在一个Container里面通常情况下只能搭配一种Model需要监听数据的改变有一些共同和特殊的属性(properties)Color, padding, widget-specific flags,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,11,1.6 Container,有一个 (widget)stack来存放其子widget对widget的Layout进行管理处理Widget绘

7、制的请求自下而上的绘制其子widget,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,12,1.7 Model,一个数据容器只用来存放数据而不去管数据如何呈现可以对其存放的数据进行操作有一个通知机制(IModel)添加listener (注册一个callback函数)通知取消(Cancel)listener,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,13,2018/2/23,Copyright 2

8、008 MStar Semiconductor, Inc. All rights reserved.,14,1.8 Container, Widget 和 Model之间的通知机制,Widget,Container,Model,Add Listener,Notify,Events,ICONTAINER_Invalidate(),IWIDGET_Draw(),1.9 VDF (View Description File) (一),什么是VDF?VDF即View Description File,是一种XML格式的编程语言,我们可以用 VDF来描述手机画面。如widget和container的大小

9、、位置、属性等。为什么要使用VDF?我们可以在C代码中把widget插入container,但是对于复杂的View来说这样就太麻烦了。于是XMMI提供了VDF的机制来简化UI的实现。VDF的优点语法简单,容易使用具有高可读性容易定制,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,15,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,16,1.9 VDF (View Description File)(二

10、),ResourceFile.c,Generator,Header file(View ID & Widget ID),2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,17,1.9 VDF (View Description File) (三), ,VDF的语法可以参考ViewDefinitionLanguage.dtd, mae_vdftags.h,1.10 AP Manager,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All righ

11、ts reserved.,18,Applet A,Applet B,A,AP History,MAE,B,1.10 AP Manager,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,19,Applet A,Applet B,A,AP History,MAE,B,1.11 引用个数Reference count,MAE 把每一个 APP/SRV/Widget看做一个对象,Reference count用来表示使用该对象当前被引用的个数。当一个对象被另一个对象创建或引用时,这个对象的Referenc

12、e count会被加一。当一个对象被引用它的对象释放的时候,MAE会将其Reference count减一,然后判断Reference count是否等于0。只有Reference count等于0时该对象才会真正被释放。,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,20,1.12 事件处理流程Event flow,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,21,每一个object有它自己的事件

13、处理函数叫做 xxx_HandleEvent,1、用户可以对接收到的Event进行处理,2、该Event被交给View manager处理,3、如果View manager未处理,把该事件交给state machine处理,2. 基于MAE平台设计第一个应用程序,将讲述以下内容,创建一个范例AP使用XFSM设计AP通过主菜单启动AP,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,23,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All ri

14、ghts reserved.,24,2.1 设计工具,XMMI提供了以下工具,这些工具让我们设计AP变得更容易XFSM (Xmmi Finite State Machine): 这个工具帮助我们用状态机来设计AP。程序员可以使用XFSM来设计状态树和状态条状。 XFSM会把这些设计转变成C代码。XRG (Xmmi Resource Generator): XRG管理所有的资源,这些资源会在AP中用到,例如:字符串图片和铃声VDF用户设定值(可定制)其他 (菜单, 字体 ,PLMN表格等),2.2 XFSM 与 XRG的关系,XFSM帮助我们建立AP的程序框架,XRG 提供AP要用到的资源,将框

15、架和资源组合在一起,2.3 创建一个新AP的过程,AP设计阶段(状态机,UI流图)使用XFSM实现状态机创建一个新工程设计状态树(Mode Tree)创建事件(Event)设计状态跳转(Transition)将设计转成C代码使用XRG新增需要的资源添加需要的字符串,图片添加demo中要用到的菜单添加Shortcut创建一个新的VDF文件和头文件(head file),并添加到XRG中编辑mmi_mainmenuapp.vdf,将demo加入主菜单编译XRG编写代码在模拟器上运行,休息,打电话,睡觉,闭眼,睁眼,去洗澡,9:00PM,电话铃响,去接电话,接完电话,去睡觉,洗完澡,状态分级后的简化状态模型,2.4 状态跳转图,状态树,英文化,系统化,范例APP状态树,2.5 状态树,2.6 UI Flow,Select Demo,Incoming call,End call,End call,Select 9:00 PM,Go to Bed,3 用XFSM实现状态机,2018/2/23,Copyright 2008 MStar Semiconductor, Inc. All rights reserved.,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号