BREW手機中的事件處理

2021-05-26 00:44:15 字數 662 閱讀 2470

brew是基於事件驅動的,可以通過ishell介面中的相關方法傳送或接收指定的事件,事件在系統中的分發處理是通過aee層來實現的。傳送事件的方法有ishell_sendevent,ishell_postevent等,接收特定事件的方法主要是通過ishell_registernotify方法來實現,也可以通過mif檔案中的設定完成。如果應用註冊了事件,aee層在事件發生的時候就會傳送evt_notify 事件給該應用。

控制項事件一般以evt_ctl為字首命名的,例如evt_ctl_tab,evt_ctl_add_item等,對話方塊事件一般以evt_dialog為字首命名的。如果應用使用控制項或者對話方塊,一般要對相關的事件進行處理。對告警事件的設定一般有兩種方法ishell_setalarm和ialarmmgr_setalarm,當告警時間來臨的時候,evt_alarm 事件將被傳送給該應用,evt_alarm事件型別是通過掩碼來區分的。

事件的訊息佇列並沒有優先順序,所有的事件都具有相同的優先順序,也就是系統對所有的訊息都看作是相同優先順序的,必須乙個訊息等待處理完畢即事件處理方法返回後,才能夠處理另外的訊息。因此編寫的應用程式必須及時接收並處理來自系統的事件訊息,並且把控制權及時地返回系統,這樣才能保證應用程式的正常執行。如果程式中某個事件的處理方法長時間的執行而不能及時返回系統響應其它系統事件,aee將會認為是系統發生錯誤,為了避免破壞系統,裝置將選擇強制性重新啟動。

BREW的事件機制,BREW中的設計模式

brew的事件機制 2007 03 08 10 47 a.m.brew中的handle event函式都是boolean返回型別的,這是為了實現事件處理的層次機制,當該層上的handle event沒有處理該事件時,應該返回false,以便上層對該事件感興趣的handle event來處理。如果處理...

BREW中的手機定製化

以往,由於中國2g 手機的多數業務集中於語音和簡訊,因此處於價值鏈兩端的運營商和製造商沒有找到太多的契合點。多數情況下,手機廠商的產品差異不多,而運營商對手機終端的決定權也不大。隨著智慧型手機的出現,運營商開始產生出手機定製的需求,這樣既可以使業務與手機相結合,也可以使自己利用終端優惠和業務優惠,推...

支援BREW的手機

目前,支援brew功能的手機還主要是cdma網路的使用者終端,但隨著3g的到來以及中國電信開始經營基於brew的移動增值業務,支援brew功能的手機會越來越多。最早在中國上市的手機是kz820和lg8088,截止到2003年年底,支援brew的部分手機如圖8 3所示。2004 年,brew 手機佔c...