專利名稱:動態(tài)配置插件啟動的方法
技術領域:
本發(fā)明涉及計算機領域,特別是涉及一種動態(tài)配置插件啟動的方法。
背景技術:
隨著計算機制造行業(yè)的飛速發(fā)展,個人計算機的處理能力越來越強大,PC機操作系統(tǒng)已全面進入圖形化界面時代,甚至便攜式設備中也普遍采用了圖形化界面的操作系統(tǒng)。在眾多主流的圖形化操作系統(tǒng)中,如Windows系列、Mac OS系列、或部分Linux/BSD/ Solaris的圖形0S,無論其是否開放源代碼,均提供一個開放性的桌面圖形用戶界面為用戶的應用提供支持,這類操作系統(tǒng)通常稱為桌面操作系統(tǒng),是目前應用最為廣泛的一類操作系統(tǒng)。在桌面操作系統(tǒng)中,時常要面向復雜多變的各類應用進行處理,因而存在著眾多的桌面應用程序,這些應用程序通常并非是由操作系統(tǒng)直接提供,而是在操作系統(tǒng)中提供開放性的應用程序接口,為各個應用程序開發(fā)人員提供一個“黑箱”,讓開發(fā)人員通過一系列標準的系統(tǒng)調(diào)用來使用操作系統(tǒng)的功能。這種方式雖然方便了應用程序的開發(fā),使得操作系統(tǒng)可以得到更多軟件廠商的支持,但卻不可避免地造成了用戶桌面應用系統(tǒng)的堆積, 并且應用程序之間的標準混亂和相互調(diào)用困難等問題也日益嚴重,用戶為了完成一系列的應用往往需要在多個應用系統(tǒng)間不停地進行切換。于是,整合桌面平臺的解決方案被提出,用來將用戶桌面上的多種應用程序進行整合,使得用戶可以在一個平臺下將同一系列應用所需的系統(tǒng)進行集成,從而直接調(diào)用各種第三方應用程序而不用頻繁進行切換和登錄。但是,由于目前行業(yè)中的軟件大都關聯(lián)性較差,不同公司開發(fā)研制的很多產(chǎn)品,并沒有給用戶提供一個方式進行相互調(diào)用,用戶很難在同一個產(chǎn)品上定制或者使用各個公司研發(fā)的組件。
發(fā)明內(nèi)容
(一)要解決的技術問題針對現(xiàn)有技術的缺點,本發(fā)明為了解決目前軟件產(chǎn)品相互調(diào)用困難的問題,提供了一種集成眾多應用插件于一體的全新平臺,使得用戶在同一平臺上管理眾多應用成為可能。( 二 )技術方案為解決上述技術問題,本發(fā)明具體采用如下技術方案進行一種動態(tài)配置插件啟動的方法,該方法包括步驟Si,金融本初始化,讀取配置文件中的插件信息,通過反序列化所述插件信息來創(chuàng)建插件對象,在本地內(nèi)存中保存所述插件對象的列表;S2,進行界面加載,通過讀取的所述插件信息,啟動名稱、路徑、和/或圖標元素生成界面樹,并生成界面樹的點擊啟動狀態(tài),所述點擊啟動狀態(tài)與所述插件對象的列表相關聯(lián);S3,點擊任一界面樹或所述界面樹的節(jié)點時,根據(jù)所述點擊啟動狀態(tài)的目錄配置項中的屬性判斷是否為葉子節(jié)點;如果是,則執(zhí)行步驟S4進行插件的啟動;否則,將當前點擊的節(jié)點作為根節(jié)點進行展開直到得到葉子節(jié)點;S4,展開至最深層,得到具體的葉子節(jié)點,每一葉子節(jié)點代表相應的插件,通過所述點擊啟動狀態(tài)獲取葉子節(jié)點所代表插件的插件對象,通過指定的配置文件進行資源加載。優(yōu)選地,步驟S4中所述資源加載具體采用步驟為S201,監(jiān)聽并接收對特定應用程序插件的啟動命令;S202,通過讀取從配置文件反序列化出來的對象實例獲取應用程序的啟動信息;S203,判斷是否需要以支持參數(shù)的形式啟動,如果是執(zhí)行步驟S204;否則執(zhí)行步驟 S205 ;S204,以帶參形式調(diào)用默認的進程啟動方式;S205,以無參形式調(diào)用默認的進程啟動方式。優(yōu)選地,步驟S204或步驟S205中,所述進程啟動方式具體為S301,插件開始啟動;S302,通過插件名稱尋找插件;S303,通過插件名稱尋找相應的任務;S304,通過條件判斷啟動任務的情況,根據(jù)任務啟動條件創(chuàng)建任務進行啟動。優(yōu)選地,步驟S304中,所述創(chuàng)建任務進行啟動具體包括步驟S401,創(chuàng)建任務;S402,創(chuàng)建任務項通知列表;S403,創(chuàng)建窗口堆棧項列表;S404,創(chuàng)建任務列表;S405,返回任務列表及窗口堆棧項列表的句柄供應用程序調(diào)用;S405,在用戶界面顯示任務及對應的窗口。(三)有益效果本發(fā)明通過對金融本的插件進行動態(tài)配置,同時提供參數(shù)啟動插件或應用,極具適用性和擴展性,使得用戶可以在金融本這個平臺上啟動或配置任意自定義插件和任意已知第三方插件。
圖1為本發(fā)明中動態(tài)配置插件的啟動方法流程圖。
具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明主要通過對配置文件的反序列化,生成實體對象,然后利用對象保存的應用程序信息來實現(xiàn)應用程序的啟動功能,同時,還支持通過接口的繼承以及多態(tài)來實現(xiàn)自定義的應用程序啟動的特殊需求(如靜默啟動,從靜默啟動切換至非靜默啟動,從非靜默啟動切換至靜默啟動,最小化至托盤,以及從托盤呼出等等)。通過這種方式,本發(fā)明提供了一種可動態(tài)配置插件的方法,支持在桌面整合平臺中對任意第三方插件進行配置和啟動,極大地方便了用戶在一個統(tǒng)一的平臺下進行應用程序的集成和調(diào)用,使得用戶可以安全高效地進行一系列的相關應用處理,而無需頻繁地在各個不同的應用系統(tǒng)中進行登錄、驗證和切換。具體地,在本發(fā)明的實施例中,主要針對金融本平臺這一桌面整合平臺進行優(yōu)化, 金融本是一種金融業(yè)務便攜設備,由硬件和軟件兩個部分組成,硬件是一個基于X86架構的掌上電腦,軟件是基于WES7的安全軟件平臺,用戶通過使用軟件平臺為其提供的專用功能和服務,可以實現(xiàn)各種金融交易。整個金融本系統(tǒng)包括啟動模塊,用于接收啟動信號并啟動操作系統(tǒng);檢測模塊,用于在操作系統(tǒng)啟動之后判斷是否需要啟動安全控制平臺,安全控制平臺是金融業(yè)務的工作平臺;業(yè)務模塊,用于當檢測模塊檢測到需要啟動安全控制平臺時,啟動金融業(yè)務界面,以及金融業(yè)務的處理;通訊模塊,用于與金融業(yè)務服務器通訊; 輸入輸出模塊,用于輸入信息、操作命令及顯示輸出結果;解析模塊,用于解析通訊模塊接收的來自金融業(yè)務服務器的信息;調(diào)用模塊,用于根據(jù)解析模塊解析的結果調(diào)用業(yè)務模塊。 金融本平臺作為一種整合桌面平臺,是集成在桌面的綜合應用程序,其提供了強大的插件管理功能,能夠滿足用戶通過金融本應用程序啟動任意第三方插件,方便了用戶在金融本這個平臺上調(diào)用相關聯(lián)的任意應用,并且可以通過參數(shù)準確定位第三方應用程序的啟動時的界面(只要該第三方應用程序支持此功能),充分體現(xiàn)了以用戶為本,以需求為導向的設計理念。通過金融本平臺,使各個插件集成在一起,豐富了用戶體驗,并且定位準確,同時支持多啟動插件。此技術可以直接支持任何第三方插件的啟動,只需要簡單的配置或者通過金融本平臺進行軟件的在線安裝即可。金融本支持配置加載任意的自主研發(fā)插件及第三方插件,其功能的實現(xiàn)有賴于插件靈活的可配置性。用戶可以在配置文件中通過簡單的管理插件的相關信息(例如應用程序名稱,應用程序路徑,應用程序圖標,以及應用程序的啟動參數(shù)等等)來實現(xiàn)通過金融本直接調(diào)用任何已知或未知第三方應用程序的功能。在任意支持帶參數(shù)啟動的應用程序中,通過傳參來調(diào)用該應用程序默認的啟動方式,可以精準的實現(xiàn)應用程序的啟動定位(包括界面上的定位,界面上的數(shù)據(jù)定位、圖表定位等)。為了獲得更友好的用戶體驗,金融本還支持啟動應用程序的總在最前功能,此功能的實現(xiàn)依賴于通過當前窗口句柄來獲得窗口位置的堆棧信息。參見圖1,金融本中動態(tài)配置插件并啟動的方法具體為Si,在金融本初始化時,讀取配置文件中的插件信息,通過反序列化所述插件信息來創(chuàng)建插件對象,在本地內(nèi)存中保存所述插件對象的列表;S2,在界面加載的時候,通過讀取的所述插件信息,啟動名稱、路徑、圖標等元素生成界面樹,并生成界面樹的點擊啟動狀態(tài),所述點擊啟動狀態(tài)與所述插件對象的列表相關聯(lián);
S3,點擊任一界面樹或所述界面樹的節(jié)點時,根據(jù)所述點擊啟動狀態(tài)的目錄配置項中的屬性判斷是否為葉子節(jié)點;如果是,則執(zhí)行步驟S4進行插件的啟動;否則,將當前點擊的節(jié)點作為根節(jié)點進行展開直到得到葉子節(jié)點;S4,展開至最深層,得到具體的葉子節(jié)點,每一葉子節(jié)點代表相應的插件,通過所述點擊啟動狀態(tài)獲取葉子節(jié)點所代表插件的插件對象,通過指定的配置文件進行資源加載。具體地,資源加載時還可實現(xiàn)自定義的應用程序啟動的特殊需求(如靜默啟動, 從靜默啟動切換至非靜默啟動,從非靜默啟動切換至靜默啟動,最小化至托盤,以及從托盤呼出等等),其具體方式為S201,監(jiān)聽并接收對特定應用程序插件的啟動命令;S202,通過讀取從配置文件反序列化出來的對象實例獲取應用程序的啟動信息;S203,判斷是否需要以支持參數(shù)的形式啟動,如果是執(zhí)行步驟S204;否則執(zhí)行步驟 S205 ;S204,以帶參形式調(diào)用默認的進程啟動方式;S205,以無參形式調(diào)用默認的進程啟動方式。插件啟動時,還可同時創(chuàng)建或恢復與插件對應任務,使得用戶可直接進入任務的處理,而不必重復進行系統(tǒng)切換和個人身份驗證,具體的任務啟動方式為S301,插件開始啟動;S302,通過插件名稱尋找插件;S303,通過插件名稱尋找相應的任務;S304,通過條件判斷啟動任務的情況(如支持多個任務啟動,以及是否需要傳入?yún)?shù)等),根據(jù)任務啟動條件創(chuàng)建任務啟動。此外,任務具體啟動時可支持多個任務同時處理,并可支持任務窗口的啟動定位 (包括界面上的定位,界面上的數(shù)據(jù)定位、圖表定位等),具體采用如下步驟進行S401,創(chuàng)建任務;S402,創(chuàng)建任務項通知列表;S403,創(chuàng)建窗口堆棧項列表;S404,創(chuàng)建任務列表;S405,返回任務列表及窗口堆棧項列表的句柄供應用程序調(diào)用;S405,在用戶界面顯示任務及對應的窗口。通過上述實施方式,本發(fā)明對金融本的插件進行動態(tài)配置,同時提供參數(shù)啟動插件或應用,極具適用性和擴展性,使得用戶可以在金融本這個平臺上啟動或配置任意自定義插件和任意已知第三方插件。以上實施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關技術領域的普通技術人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術方案也屬于本發(fā)明的范疇,本發(fā)明的發(fā)明保護范圍應由權利要求限定。
權利要求
1.一種動態(tài)配置插件啟動的方法,其特征在于,所述方法包括步驟Sl,金融本初始化,讀取配置文件中的插件信息,通過反序列化所述插件信息來創(chuàng)建插件對象,在本地內(nèi)存中保存所述插件對象的列表;S2,進行界面加載,通過讀取的所述插件信息,啟動名稱、路徑、和/或圖標元素生成界面樹,并生成界面樹的點擊啟動狀態(tài),所述點擊啟動狀態(tài)與所述插件對象的列表相關聯(lián);S3,點擊任一界面樹或所述界面樹的節(jié)點時,根據(jù)所述點擊啟動狀態(tài)的目錄配置項中的屬性判斷是否為葉子節(jié)點;如果是,則執(zhí)行步驟S4進行插件的啟動;否則,將當前點擊的節(jié)點作為根節(jié)點進行展開直到得到葉子節(jié)點;S4,展開至最深層,得到具體的葉子節(jié)點,每一葉子節(jié)點代表相應的插件,通過所述點擊啟動狀態(tài)獲取葉子節(jié)點所代表插件的插件對象,通過指定的配置文件進行資源加載。
2.根據(jù)權利要求1所述的方法,其特征在于,步驟S4中所述資源加載具體采用步驟為S201,監(jiān)聽并接收對特定應用程序插件的啟動命令;S202,通過讀取從配置文件反序列化出來的對象實例獲取應用程序的啟動信息; S203,判斷是否需要以支持參數(shù)的形式啟動,如果是執(zhí)行步驟S204;否則執(zhí)行步驟 S205 ;5204,以帶參形式調(diào)用默認的進程啟動方式;5205,以無參形式調(diào)用默認的進程啟動方式。
3.根據(jù)權利要求2所述的方法,其特征在于,步驟S204或步驟S205中,所述進程啟動方式具體為S301,插件開始啟動;S302,通過插件名稱尋找插件;S303,通過插件名稱尋找相應的任務;S304,通過條件判斷啟動任務的情況,根據(jù)任務啟動條件創(chuàng)建任務進行啟動。
4.根據(jù)權利要求3所述的方法,其特征在于,步驟S304中,所述創(chuàng)建任務進行啟動具體包括步驟S401,創(chuàng)建任務; S402,創(chuàng)建任務項通知列表; S403,創(chuàng)建窗口堆棧項列表; S404,創(chuàng)建任務列表;S405,返回任務列表及窗口堆棧項列表的句柄供應用程序調(diào)用; S405,在用戶界面顯示任務及對應的窗口。
全文摘要
本發(fā)明涉及計算機領域,提供了一種動態(tài)配置插件啟動的方法,通過對配置文件的反序列化,生成實體對象,然后利用對象保存的應用程序信息來實現(xiàn)應用程序的啟動功能,采用這種方式對金融本的插件進行動態(tài)配置,同時提供參數(shù)啟動插件或應用,極具適用性和擴展性,使得用戶可以在金融本這個平臺上啟動或配置任意自定義插件和任意已知第三方插件。
文檔編號G06F9/445GK102262541SQ20111023083
公開日2011年11月30日 申請日期2011年8月12日 優(yōu)先權日2011年8月12日
發(fā)明者萬雪松, 于曉軍, 趙辰清 申請人:北京思創(chuàng)銀聯(lián)科技股份有限公司