《BREW進階與精通——3G移動增值業務的運營、定製與開發》連載之80——BREW應用間通訊之回調通知

來源:互聯網
上載者:User

AEE層 支援通知的概念,通知是一種當其它應用中發生某些差錯時可以為該事件註冊不同應用來處理的機制。例如,可以將應用註冊為在有進入的 SMS 訊息時接收通知。這表示只要有進入的 SMS 訊息,登入接收通知的應用就會收到一個事件,這個事件就是 EVT_NOTIFY。通知程式就是產生通知的應用,例如: ITAPI 可充當通知程式,在有進入的 SMS 訊息時就會發會通知。每當通知程式需要發送通知時,都要使用 ISHELL_Notify() 方法。 應用可以通過註冊來接收通知,要這樣做,一般要使用函數 ISHELL_RegisterNotify()。 例如,應用可以使用ISHELL_RegisterNotify()註冊從 AEECLSID_TAPI 介面接收該類特定事件的通知。

INotifier 是指定必須由需要成為通知程式的應用來實現的函數介面。任何要發出通知以便其它應用能夠收到它的應用必須實現 Inotifier 介面中的函數,且實現 Inotifier 介面並定義該類能夠發出的通知(或掩碼)組,0xFFFFFFFF 代表接收所有的通知,0x00000000代表所有通知都不接收,例如:TAPI可以發出的通知有NMASK_TAPI_SMS、NMASK_TAPI_TS_PAGE 和 NMASK_TAPI_TS_VMAIL等類型。 這些掩碼必須對其它應用可用,以便關注這些通知的應用可以註冊它們。通知程式無論何時發出通知,均必須調用 ISHELL_Notify() 函數。這時, AEE層負責通知登入接收該通知的所有應用。

從BREW 3.1.4以後,引入了IALARMMGR介面,一個應用可以通過警示設定來通知另一個應用執行相關的操作。相對於ISHELL_SetAlarm而言,IALARMMGR可以對以秒為單位的時間間隔來設定警示觸發,而且可以根據相當時間或者絕對時間來設定。IALARMMGR的一個重要功能是在設定警示觸發前可以為使用者保留一個唯一的警示代碼。警示代碼是一個16 bit的整數,可以使用 IALARMMGR_SetUserCode() 和IALARMMGR_GetUserCode() 來設定和擷取該警示代碼。通過IALARMMGR_SetAlarm()指定一個有效 ClassId就可以讓另一個應用接收警示了,接收警示的應用監聽到EVT_ALARM事件, wParam是警示代碼,然後就可以執行相關的操作了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.