分享
 
 
 

BREW常见问题解答(FAQ 5)-处理器和事件处理

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

FAQ 3a:

问:非高通的芯片能够使用BREW吗?

答:目前的BREW仅支持高通MSM芯片,但是我们认为将来BREW也能很好的支持非高通芯片。现在谈论BREW除了支持高通MSM系列芯片之外还支持其他芯片,尚为之过早。

FAQ 3b:

问:BREW支持那些设备?

答:当前,BREW支持高通系列芯片:MSM3100, MSM3300, MSM5000, MSM5100, and MSM5105。而且,对于特定电话机或者其他设备,需要具有"BREW enabled"。

FAQ 4a:

问:应用程序需要处理什么事件?

答:除了EVT_APP_START和EVT_APP_STOP之外的事件,为了通过TRUE BREW测试,你的应用程序还必须处理EVT_APP_SUSPEND和EVT_APP_RESUME事件。

暂停和恢复应用程序的更多信息参看暂停和恢复事件。

FAQ 4b:

问:使用电话的"End"键和"Clear"键有什么不同?

答:对于一个OEM设备,指定的按键有下面两种行为:

1、一个键,在被按下时,关闭当前应用程序。大多数的OEM都指定这种键为AVK_CLR键。

2、一个键,在被按下时,关闭所有应用程序。大多数的OEM都指定这种键为AVK_END键。

AVK_END被按下时,BREW立即给活动的应用程序发送EVT_APP_STOP消息,而不是先发送AVK_END消息。另外卸载应用程序之前,调用FreeAppData()回调程序;其它的事件和回调将不会发生。

AVK_CLR被按下时,BREW首先给应用程序发送该消息。如果应用程序不能处理这个事件(比如,返回FALSE),BREW就将关闭应用程序。在执行AVK_CLR过程中,记住要调用FreeAppData,例:

case AVK_CLR:

if (pMe->OnMainMenu == TRUE) {

// App is on main menu. Therefore pressing CLR key should cause app to exit

HelloWorld_FreeAppData(pi); //clean up

return FALSE; //return FALSE so that BREW will now close application

}

else { // Not on main menu.

// Therefore pressing CLR key should cause app to undo one level of menu

// nesting. Show previous menu in menu hierarchy

return TRUE;

}

确认FreeAppletData()完全地清除所有分配的内存和资源,即由CreateInstance, CreateDialog, MALLOC创建的对象和接口必须相应被Release和FREE掉。

FAQ 4c:

问:我如何处理电池电量低的警告?

答:BREW在发生低电量警告时发送EVT_APP_SUSPEND事件。为了处理低电量情况,你必须正确的处理EVT_APP_SUSPEND和EVT_APP_RESUME事件。

FAQ 4d:

问:ISHELL_SendEvent()和ISHELL_PostEvent()有什么不同?

答:ISHELL_SendEvent()和ISHELL_PostEvent()都是用来发送事件的函数。不同的是发送的方式不同。

ISHELL_SendEvent()是把事件立即发送到某类ID的应用程序。如果当前类的实例不能获得,AEE外壳就创建一个,然后以特定的事件代码和数据参数调用IAPPLET_HandleEvent()函数。除非选择启动自己,应用程序会在完全处理事件后终止。

ISHELL_PostEvent()和ISHELL_SendEvent()类似,除了目标类的IAPPLET_HandleEvent()函数不能立即被调用。发送的事件放置到队列重,之后再发送,这就允许应用程序不必中断运行,在当前函数运行完毕后,再处理事件。

ISHELL_SendEvent()函数允许控制目标类应用程序。这个函数直接向目标应用程序发送事件。ISHELL_PostEvent()则是在下一个事件处理周期开始后才会处理。这个函数非常实用,使得系统允许事件处理时,才会处理发送的事件。

FAQ 4e:

问:我的应用程序可以向系统注册哪些通知事件?

答:应用程序能够向系统注册的系统通知有:

TAPI (Class ID: 0x01001007)

NMASK_TAPI_STATUS 0x0001 TAPI状态处理事件

NMASK_TAPI_SMS_TEXT 0x0002 短消息到达事件

NMASK_TAPI_SMS_TS 0x0004 特定通信服务ID短消息

INETMGR

NMASK_OPENED 0x0001 网络层可获得

NMASK_CLOSED 0x0002 网络层关闭

NMASK_IDLE 0x0004 网络层可获得且空闲

请注意INETMGR NMASK_UDP_LISTEN不能工作,不推荐使用。

应用程序还能够注册来自动态应用和模块的接收通知回调。参加INotifier接口获得更多信息。

FAQ 4f:

问:在没有供应电话的情况下,我如何测试应用程序Suspend/Resume事件?

答:在Kyocera 3035,你可以在使能自动keyguard(Main Menu->Settings->Keyguard)后测试应用程序的Suspend/Resume事件的处理。当Keyguard触发,运行的应用将接收到Suspend事件。屏幕被锁定时,应用程序将接收到Resume事件。

在Sharp Z-800,你可以在设置闹钟一段时间后取消(Main Menu->Setup/Tools->Alarm->Daily Alarm)后测试应用程序的Suspend/Resume事件的处理。运行应用程序后,就可以测试了。注意,要使应用程序在闹钟取消后能够成功suspended,那么需要关闭BREW优先级(Main Menu->Setup/Tools->BREW Priority Setting)。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有