声色情事 » 日志 » Brew App的加载【YOYO来稿】
Brew App的加载【YOYO来稿】
niki_june 发表于 2008-07-17 21:17:38
我的本意是想YOYO同学记录一下出差生活,结果到现在一篇相关的都没有,这还整开专业技术了,吓唬谁啊~~
写些大家看不懂的有意思吗?
不过据说,这方面的资料比较少,留个备份,多加几个标签或许有需要的人搜到呢
以下是全文内容:
静态的brew看得不多,应该是以前常说的core app吧,
KCP以前是为了和APP task联动用的,现在变成啥样了我也不知道。
只知道Brew app的一些东西,应该就是动态加载的Brew APP。
Brew App的概念类似windows上的动态链接文件(DLL)。
主要有 mod,mif,和bid文件。
1,mod文件 :
brew app工程编译后的2进制文件,
2,mif文件:
brew app的资源文件,文件名必须和mod文件一样。
mif文件中记录了brew app的class ID,图片,作者名,版权信息,特权级别,网络访问级别等等。
brew包自带有工具可以对mif文件编辑。
3,bid文件:
由于brew app是特殊指定的,为了在Brew工程中能引用到class ID(C语言调用),所以要把BrewAPP的
ClassID写在bid文件中,如 #define AEECLSID_I_LOVE_YOU 0x00001234
切记class id要与mif中的一致。
4,BrewAPP入口:
把brew app传进手机后,
通过按键启动某个APP时,
这个函数就是AEEClsCreateinstance, 也是每个APP的入口函数。
程序员需要在AEEClsCreateInstance中判断传
如果是就需要做两件事:
1,实例化Brew APP并注册事件处理函数I_Love_You_
2, 向AEE返回 AEE_SUCCESS。
这样你的Brew APP就会被成功的初始化和启动了。
5,事件处理函数:
I_Love_You_HandleEvent注册成功后,
比如,APP 启动,停止通知;Key event通知,等等。
我们在这个函数通过 switch case来判断具体的事件类型,转向其它用户自定义的处理函数,
静态APP其实就是把APP的所有处理以及AEEClsCrea
load APP了。 静态改动态关键点是AEEClsCreateinstance的
- » 点评在新疆事件中不敬业的人
- » 末日
- » 人人都可以是“砖家”
- » 敬
- » 乌鲁木齐市严重暴力犯罪事件造成140人死828人伤
