基于qnx的應(yīng)用軟件安裝、卸載系統(tǒng)及方法
【專利摘要】本發(fā)明涉及基于QNX的應(yīng)用軟件安裝、卸載系統(tǒng)及方法,通過PPS服務(wù)為應(yīng)用軟件與主控單元間、安裝軟件與主控單元及應(yīng)用軟件間、卸載軟件與主控單元間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道,實現(xiàn)系統(tǒng)通過安裝軟件及卸載軟件實現(xiàn)應(yīng)用軟件的升級、安裝、卸載等方面的擴展,且在進行應(yīng)用軟件升級、安裝、卸載等方面擴展的同時不影響系統(tǒng)底層操作平臺,利于在汽車出廠后將第三方應(yīng)用軟件集成到車載終端中,提高用戶體驗,系統(tǒng)中應(yīng)用軟件的安裝、升級、卸載等方便快捷,且穩(wěn)定性好,可靠性強。
【專利說明】基于QNX的應(yīng)用軟件安裝、卸載系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及嵌入式系統(tǒng)的【技術(shù)領(lǐng)域】,具體涉及一種基于QNX的應(yīng)用軟件安裝、卸載系統(tǒng)及方法,尤其適用于車載終端系統(tǒng)。
【背景技術(shù)】
[0002]QNX是加拿大Blackberry (黑莓)公司開發(fā)的一個分布式、嵌入式實時操作系統(tǒng),從1981年開發(fā)出來至今該操作系統(tǒng)功能不斷得到完善。QNX系統(tǒng)提供完全地址空間保護、同時支持進程和線程兩種任務(wù)實現(xiàn)方式。此外,QNX系統(tǒng)還具有以下特點:利用QNX系統(tǒng)本身的穩(wěn)定性保證系統(tǒng)底層數(shù)據(jù)處理的穩(wěn)定;QNX系統(tǒng)處理數(shù)據(jù)的實時性強、可靠性好;QNX系統(tǒng)提供標準的多任務(wù)進程調(diào)度方式、基于優(yōu)先級驅(qū)動的急者優(yōu)先搶占的調(diào)度方式和快速上下文切換支持個并發(fā)進程,優(yōu)先級設(shè)置可由用戶選擇的調(diào)度方式;采用微內(nèi)核體系結(jié)構(gòu),系統(tǒng)僅提供核心服務(wù),所有其它系統(tǒng)服務(wù),都實現(xiàn)為協(xié)作的用戶進程,系統(tǒng)的核心非常小巧,因而運行速度極快;網(wǎng)絡(luò)功能和分布式處理能力強?;赒NX的應(yīng)用系統(tǒng)穩(wěn)定、可靠,并能在線對軟件模塊隨時熱插拔。如今,被廣泛地應(yīng)用于以實時性能、開發(fā)靈活性和網(wǎng)絡(luò)靈活性為首要要求的應(yīng)用領(lǐng)域。
[0003]目前,車載終端采用的QNX嵌入式系統(tǒng)在開發(fā)過程中沒有采用迭代開發(fā),屬于封閉系統(tǒng),產(chǎn)品出廠后其系統(tǒng)不具備新增應(yīng)用軟件及對系統(tǒng)內(nèi)已有應(yīng)用軟件進行卸載、升級等操作的功能。若對系統(tǒng)新增應(yīng)用軟件或?qū)ο到y(tǒng)中的應(yīng)用軟件進行卸載、升級等操作,則影響系統(tǒng)底層操作平臺,系統(tǒng)擴展性能差。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的第一目的是克服現(xiàn)有技術(shù)的不足和缺陷,提供一種基于QNX的應(yīng)用軟件安裝系統(tǒng),實現(xiàn)QNX系統(tǒng)中應(yīng)用軟件的安裝。
[0005]本發(fā)明的第一目的通過以下技術(shù)方案來實現(xiàn):一種基于QNX的應(yīng)用軟件安裝系統(tǒng),包括:
[0006]PPS服務(wù),為應(yīng)用軟件與主控單元間、安裝軟件與主控單元及應(yīng)用軟件間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道;
[0007]輸出顯示單元,將待安裝的應(yīng)用軟件安裝包信息、通過PPS服務(wù)(PersistentPublish/Subscribe)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表進行輸出顯示;
[0008]輸入控制單元,通過PPS服務(wù)輸入安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息到主控單元;
[0009]主控單元,根據(jù)安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息產(chǎn)生相應(yīng)的安裝軟件控制指令;通過PPS服務(wù)與安裝軟件進行消息通知,根據(jù)安裝軟件的消息啟動/停止已安裝的應(yīng)用軟件;根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息;
[0010]安裝軟件,通過PPS服務(wù)獲取安裝軟件控制指令,并根據(jù)安裝軟件控制指令及待安裝的應(yīng)用軟件安裝包安裝對應(yīng)的應(yīng)用軟件;更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
[0011]進一步地,所述輸入控制單元及輸出顯示單元集成于人機交互設(shè)備。
[0012]進一步地,所述安裝系統(tǒng)還包括用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,所述權(quán)限管理單元通過PPS服務(wù)與主控單元進行消息通知。
[0013]本發(fā)明的第二目的在于提供一種基于QNX的應(yīng)用軟件安裝方法,包括以下步驟:
[0014]al安裝軟件通過PPS服務(wù)獲取系統(tǒng)中待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱;
[0015]a2安裝軟件判斷系統(tǒng)是更新應(yīng)用軟件還是新安裝應(yīng)用軟件,若系統(tǒng)更新應(yīng)用軟件則執(zhí)行步驟a3,若系統(tǒng)新安裝應(yīng)用軟件則執(zhí)行步驟a4;
[0016]a3安裝軟件刪除已安裝的同名應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存,執(zhí)行步驟a4;
[0017]a4安裝軟件將待安裝的應(yīng)用軟件安裝包安裝到系統(tǒng)指定目錄中;
[0018]a5安裝軟件更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點;
[0019]a6主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息。
[0020]作為優(yōu)選,所述安裝軟件判斷是更新應(yīng)用軟件還是安裝新應(yīng)用軟件的步驟具體為:安裝軟件通過PPS服務(wù)獲取系統(tǒng)中已安裝的所有應(yīng)用軟件的應(yīng)用軟件信息,判斷已安裝的所有應(yīng)用軟件中是否存在與待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱相同的應(yīng)用軟件,若存在則為更新應(yīng)用軟件,若不存在則為新安裝應(yīng)用軟件,所述應(yīng)用軟件信息包括:圖標文件名、可執(zhí)行文件名、類別、默認參數(shù)、優(yōu)先級信息及版本信息。。
[0021]所述安裝軟件將待安裝的應(yīng)用軟件安裝包安裝到系統(tǒng)指定目錄中的步驟之前還包括安裝軟件對系統(tǒng)中待安裝的應(yīng)用軟件安裝包進行解包,并獲取安裝信息的步驟,所述安裝信息包括:安裝包名稱、版本、可執(zhí)行文件名以及圖標。
[0022]作為優(yōu)選,所述刪除已安裝的應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存的步驟之前還包括停止正在運行且與正在升級的應(yīng)用軟件名稱相同的應(yīng)用軟件的步驟。
[0023]作為優(yōu)選,在安裝軟件通過PPS服務(wù)獲取系統(tǒng)中待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱的步驟之后還包括校驗應(yīng)用軟件安裝包的簽名是否正確的步驟,若正確,則執(zhí)行步驟a2,若不正確,則安裝軟件進一步判斷系統(tǒng)是否設(shè)置可以安裝簽名不符的應(yīng)用軟件,若系統(tǒng)設(shè)置可以安裝簽名不符的應(yīng)用軟件,則執(zhí)行步驟a2,否則提示用戶應(yīng)用軟件簽名不正確,并結(jié)束安裝應(yīng)用軟件。
[0024]本發(fā)明的第三目的在于提供一種基于QNX的應(yīng)用軟件卸載系統(tǒng),包括:
[0025]PPS服務(wù),為應(yīng)用軟件與主控單元間、卸載軟件與主控單元及應(yīng)用軟件間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道;
[0026]輸出顯示單元,通過PPS服務(wù)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表,并進行輸出顯示;
[0027]輸入控制單元,通過PPS服務(wù)輸入卸載軟件請求指令、卸載應(yīng)用軟件選擇信息到主控單元;
[0028]所述主控單元根據(jù)卸載軟件請求指令產(chǎn)生應(yīng)用軟件列表獲取指令,根據(jù)卸載應(yīng)用軟件選擇信息,產(chǎn)生相應(yīng)的卸載軟件控制指令;通過PPS服務(wù)與卸載軟件進行消息通知;根據(jù)卸載軟件的停止待卸載應(yīng)用軟件請求指令停止相應(yīng)的應(yīng)用軟件;根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息;
[0029]卸載軟件,通過PPS服務(wù)獲取卸載軟件控制指令,并根據(jù)卸載軟件控制指令向主控單元請求停止正在運行的待卸載應(yīng)用軟件,收到主控單元完成停止待卸載應(yīng)用軟件的信息后卸載系統(tǒng)中相應(yīng)的應(yīng)用軟件;更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
[0030]進一步地,所述輸入控制單元及輸出顯示單元集成于人機交互設(shè)備。
[0031]進一步地,所述卸載系統(tǒng)還包括用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,所述權(quán)限管理單元通過PPS服務(wù)與主控單元進行消息通知。
[0032]本發(fā)明的第四目的在于提供一種基于QNX的應(yīng)用軟件卸載方法,包括以下步驟:
[0033]bl卸載軟件查詢PPS服務(wù)的軟件信息節(jié)點獲取已安裝的應(yīng)用軟件列表,所述應(yīng)用軟件列表包括應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息;
[0034]b2用戶根據(jù)應(yīng)用軟件列表選擇待卸載的應(yīng)用軟件;
[0035]b3用戶根據(jù)人機交互設(shè)備顯示的應(yīng)用軟件列表選擇待卸載應(yīng)用軟件;
[0036]b4卸載軟件通過PPS服務(wù)向主控單元請求停止正在運行的待卸載應(yīng)用軟件;接收到主控單元完成停止請求的信息后執(zhí)行b5,否則卸載過程中止返回bl ;
[0037]b5卸載軟件刪除待卸載應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存;
[0038]b6卸載軟件更新PPS服務(wù)的軟件信息節(jié)點;
[0039]b7主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。
[0040]本發(fā)明相比現(xiàn)有技術(shù)包括以下優(yōu)點及有益效果:
[0041](I)通過PPS服務(wù)為應(yīng)用軟件與主控單元間、安裝軟件與主控單元及應(yīng)用軟件間、卸載軟件與主控單元間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道,實現(xiàn)系統(tǒng)通過安裝軟件及卸載軟件實現(xiàn)應(yīng)用軟件的升級、安裝、卸載等方面的擴展,且在進行應(yīng)用軟件升級、安裝、卸載等方面擴展時不影響系統(tǒng)底層操作平臺,擴展性強。
[0042](2)通過本發(fā)明提供的權(quán)限管理系統(tǒng)用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息,實現(xiàn)對系統(tǒng)中的應(yīng)用軟件的管理,提高系統(tǒng)的穩(wěn)定性和安全性。
[0043](3)通過本發(fā)明提供的安裝和卸載系統(tǒng)、安裝方法及卸載方法使系統(tǒng)中應(yīng)用軟件的安裝、升級、卸載等方便快捷,且穩(wěn)定性好,可靠性強。
[0044](4)本發(fā)明提供的安裝和卸載系統(tǒng)、安裝方法及卸載方法應(yīng)用于車載終端時,利于在汽車出廠后將第三方應(yīng)用軟件集成到車載終端中,提高用戶體驗。
【專利附圖】
【附圖說明】
[0045]圖1為實施例1中基于QNX的應(yīng)用軟件安裝系統(tǒng)的原理框圖;
[0046]圖2為實施例1中應(yīng)用軟件安裝方法的流程圖;
[0047]圖3為實施例2中基于QNX的應(yīng)用軟件卸載系統(tǒng)的原理框圖;
[0048]圖4為實施例2中應(yīng)用軟件卸載方法的流程圖。
【具體實施方式】
[0049]下面結(jié)合實施例及附圖對本發(fā)明作進一步詳細的描述,但本發(fā)明的實施方式不限于此。
[0050]實施例1
[0051]如圖1所示,一種基于QNX的應(yīng)用軟件安裝系統(tǒng),包括:PPS (Persistent Publish/Subscribe)服務(wù)、主控單元(Navigator)、安裝軟件(Installer)、權(quán)限管理單元、輸入控制單元及輸出顯示單元。
[0052]所述PPS服務(wù)為應(yīng)用軟件與主控單元間、權(quán)限管理單元與主控單元間、安裝軟件與主控單元及應(yīng)用軟件間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道。
[0053]輸出顯示單元,將待安裝的應(yīng)用軟件安裝包信息、通過PPS服務(wù)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表進行輸出顯示,供用戶根據(jù)系統(tǒng)中已安裝的應(yīng)用軟件列表選擇相應(yīng)的待安裝的應(yīng)用軟件安裝包。
[0054]輸入控制單元,通過PPS服務(wù)輸入安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息到主控單元。
[0055]權(quán)限管理單元,用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,并通過PPS服務(wù)與主控單元進行消息通知。
[0056]主控單元,根據(jù)安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息,產(chǎn)生相應(yīng)的安裝軟件控制指令;通過PPS服務(wù)與安裝軟件進行消息通知,所述安裝軟件的消息包括請求啟動指定的應(yīng)用軟件信息及停止指定的應(yīng)用軟件信息。主控單元根據(jù)請求啟動指定的應(yīng)用軟件信息啟動相應(yīng)的應(yīng)用軟件,根據(jù)請求停止指定的應(yīng)用軟件信息停止相應(yīng)的應(yīng)用軟件。主控單元還根據(jù)輸入控制單元的應(yīng)用軟件控制指令控制相應(yīng)的應(yīng)用軟件的工作狀態(tài)及過程。主控單元還根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。
[0057]安裝軟件,通過PPS服務(wù)獲取安裝軟件控制指令,并根據(jù)安裝軟件控制指令及待安裝的應(yīng)用軟件安裝包安裝對應(yīng)的應(yīng)用軟件;更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
[0058]在本實施例中所述輸入控制單元及輸出顯示單元集成于人機交互設(shè)備。所述人機交互設(shè)備依次通過驅(qū)動模塊及中間件后從PPS服務(wù)上獲取相關(guān)信息或?qū)⑿畔懭胫罰PS服務(wù)。
[0059]當系統(tǒng)進行軟件安裝時,主控單元根據(jù)人機交互設(shè)備輸入的安裝請求指令或系統(tǒng)中應(yīng)用軟件安裝包產(chǎn)生的安裝請求指令產(chǎn)生安裝軟件控制指令,并通過PPS服務(wù)以消息通知方式告知安裝軟件,所述安裝軟件根據(jù)所獲取的安裝軟件控制指令對相應(yīng)的應(yīng)用程序安裝包進行安裝。
[0060]如圖2所示,基于上述應(yīng)用軟件安裝系統(tǒng)的應(yīng)用軟件安裝方法,具體實施過程如下:
[0061]Al用戶根據(jù)人機交互設(shè)備顯示的待安裝的應(yīng)用軟件安裝包信息、系統(tǒng)中已安裝的應(yīng)用軟件列表,并通過人機交互設(shè)備輸入安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息到主控單元。其中人機交互設(shè)備依次通過驅(qū)動模塊、中間件將安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息傳輸至PPS服務(wù)。
[0062]A2安裝軟件通過PPS服務(wù)獲取安裝應(yīng)用軟件控制指令。[0063]A3安裝軟件根據(jù)安裝軟件控制指令獲取系統(tǒng)中待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱。
[0064]A4校驗應(yīng)用軟件安裝包的簽名是否正確,若正確,則執(zhí)行步驟A6,若不正確,則執(zhí)行A5。
[0065]A5安裝軟件進一步判斷系統(tǒng)是否設(shè)置可以安裝簽名不符的應(yīng)用軟件,若系統(tǒng)設(shè)置可以安裝簽名不符的應(yīng)用軟件,則執(zhí)行步驟A6,否則執(zhí)行步驟A12。
[0066]A6安裝軟件判斷系統(tǒng)是更新應(yīng)用軟件還是安裝新應(yīng)用軟件。判斷過程具體如下:安裝軟件通過PPS服務(wù)的\pps\foryou\applications文件節(jié)點獲取系統(tǒng)中已安裝的所有應(yīng)用軟件的應(yīng)用軟件信息,并根據(jù)所獲取的應(yīng)用軟件信息判斷系統(tǒng)已安裝的所有應(yīng)用軟件中是否存在與待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱相同的應(yīng)用軟件,若存在則為更新應(yīng)用軟件,并執(zhí)行步驟A7,若不存在則為新安裝應(yīng)用軟件,并執(zhí)行步驟AS。所述應(yīng)用軟件信息包括:圖標文件名、可執(zhí)行文件名、類別、默認參數(shù)、優(yōu)先級信息及版本信息等。
[0067]A7停止正在運行且與正在升級的應(yīng)用軟件名稱相同的應(yīng)用軟件。具體如下:安裝軟件通過PPS服務(wù)的\pps\services\app-laucher文件節(jié)點寫入停止指定應(yīng)用軟件的請求,主控單元通過PPS服務(wù)的\pps\services\app_laucher文件節(jié)點獲取停止指定應(yīng)用軟件的請求后,判斷指定應(yīng)用軟件是否正在運行,若沒有運行,則主控單元將完成停止指定的應(yīng)用軟件的信息寫入PPS服務(wù)的\pps\services\app-laucher文件節(jié)點;若指定應(yīng)用軟件正在運行,則主控單元停止指定的應(yīng)用軟件,并將完成停止指定的應(yīng)用軟件的信息寫入PPS服務(wù)的\pps\services\app_laucher文件節(jié)點,安裝軟件通過PPS服務(wù)的\pps\services\app-laucher文件節(jié)點獲取指定應(yīng)用程序已被停止的信息后執(zhí)行步驟A6。所述指定應(yīng)用軟件為與正在升級的應(yīng)用軟件名稱相同的應(yīng)用軟件。
[0068]AS安裝軟件刪除已安裝的應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存,執(zhí)行步驟A9;
[0069]A9安裝軟件將待安裝的應(yīng)用軟件安裝包安裝到系統(tǒng)指定目錄中。具體如下:安裝軟件對系統(tǒng)中待安裝的應(yīng)用軟件安裝包進行解包,并獲取安裝信息;人機交互設(shè)備指定待安裝應(yīng)用軟件的安裝目錄到主控單元,主控單元將指定安裝目錄寫入PPS服務(wù)中,安裝軟件通過PPS服務(wù)獲取待安裝的應(yīng)用軟件對應(yīng)指定安裝目錄,并根據(jù)安裝信息將待安裝的應(yīng)用軟件安裝到指定的安裝目錄中。所述安裝信息包括:安裝包名稱、版本、可執(zhí)行文件名以及圖標。
[0070]AlO安裝軟件更新應(yīng)用軟件信息到PPS服務(wù)的\pps\foryou\applications文件節(jié)點,即PPS服務(wù)的軟件信息節(jié)點。所述應(yīng)用軟件信息包括安裝信息、安裝路徑信息及相關(guān)權(quán)限信息。
[0071]All主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。具體為主控單元獲取PPS服務(wù)的\pps\foryou\applications文件節(jié)點的更新信息后,讀取PPS服務(wù)的\pps\foryou\applications文件節(jié)點的信息,并更新主控單元運行狀態(tài)的應(yīng)用軟件列表。
[0072]A12提示用戶應(yīng)用軟件簽名不正確,并結(jié)束安裝應(yīng)用軟件。
[0073]實施例2
[0074]如圖3所示,一種基于QNX的應(yīng)用軟件卸載系統(tǒng),包括:PPS(Persistent Publish/Subscribe)服務(wù)、主控單元(Navigator)、卸載軟件(Uninstaller)、輸入控制單元及輸出顯示單元。
[0075]所述PPS服務(wù)為應(yīng)用軟件與主控單元間、卸載軟件與主控單元間、權(quán)限管理單元與主控單元間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道。
[0076]所述輸出顯示單元通過PPS服務(wù)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表,并進行輸出顯示,所述應(yīng)用軟件列表包括應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息。
[0077]所述輸入控制單元通過PPS服務(wù)輸入卸載軟件請求指令、卸載應(yīng)用軟件選擇信息到主控單元。
[0078]所述主控單元根據(jù)卸載軟件請求指令產(chǎn)生應(yīng)用軟件列表獲取指令,根據(jù)卸載應(yīng)用軟件選擇信息,產(chǎn)生相應(yīng)的卸載軟件控制指令;通過PPS服務(wù)與卸載軟件、權(quán)限管理單元進行消息通知,根據(jù)卸載軟件的停止待卸載應(yīng)用軟件請求指令停止相應(yīng)的應(yīng)用軟件,主控單元還根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。
[0079]權(quán)限管理單元,用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,并通過PPS服務(wù)與主控單元進行消息通知。具體為根據(jù)應(yīng)用軟件列表獲取指令通過PPS服務(wù)輸出系統(tǒng)中的應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息到主控單元,主控單元將應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息作為應(yīng)用軟件列表的一部分輸出至PPS服務(wù)的軟件信息節(jié)點。
[0080]所述卸載軟件查詢PPS服務(wù)的軟件信息節(jié)點獲取系統(tǒng)中已安裝的應(yīng)用軟件列表并通過PPS服務(wù)傳輸至輸出顯示單元;通過PPS服務(wù)獲取卸載軟件控制指令,并根據(jù)卸載軟件控制指令向主控單元請求停止正在運行的待卸載應(yīng)用軟件,收到主控單元完成停止待卸載應(yīng)用軟件的信息后卸載系統(tǒng)中相應(yīng)的應(yīng)用軟件;更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
[0081 ] 在本實施例中,所述輸入控制單元及輸出顯示單元集成于人機交互設(shè)備。
[0082]當系統(tǒng)進行軟件卸載時,主控單元根據(jù)人機交互設(shè)備輸入的卸載請求指令產(chǎn)生卸載軟件控制指令,并通過PPS服務(wù)以消息通知告知卸載軟件及權(quán)限管理單元。所述卸載軟件根據(jù)所獲取的卸載軟件控制指令對系統(tǒng)中相應(yīng)的應(yīng)用程序進行卸載。
[0083]如圖4所示,基于上述應(yīng)用軟件卸載系統(tǒng)的應(yīng)用軟件卸載方法,具體實施過程如下:
[0084]BI卸載軟件獲取已安裝的應(yīng)用軟件列表。具體過程如下:用戶通過人機交互設(shè)備輸入卸載軟件請求指令到主控單元,主控單元根據(jù)卸載軟件請求指令產(chǎn)生應(yīng)用軟件列表獲取指令,并通過PPS服務(wù)輸出至權(quán)限管理單元及卸載單元,所述權(quán)限管理單元根據(jù)應(yīng)用軟件列表獲取指令通過PPS服務(wù)輸出系統(tǒng)中的應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息到主控單元,主控單元將應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息作為應(yīng)用軟件列表的一部分輸出至PPS服務(wù)的軟件信息節(jié)點。其中人機交互設(shè)備依次通過驅(qū)動模塊、中間件將卸載軟件請求指令傳輸至PPS服務(wù)。卸載軟件根據(jù)所獲取的應(yīng)用軟件列表獲取指令查詢PPS服務(wù)的\pps\foryou\applications文件節(jié)點,即軟件信息節(jié)點,獲取已安裝的應(yīng)用軟件列表。
[0085]B2卸載軟件將所獲取已安裝的應(yīng)用軟件列表通過PPS服務(wù)由人機交互設(shè)備進行輸出顯示。根據(jù)應(yīng)用軟件的權(quán)限采用不同的方式進行輸出顯示,如對于系統(tǒng)的內(nèi)置應(yīng)用軟件,用戶不具備卸載權(quán)限,故其輸出顯示時為灰色,且無法進行卸載選擇。實現(xiàn)對系統(tǒng)中的應(yīng)用軟件的管理,提高系統(tǒng)的穩(wěn)定性和安全性。
[0086]B3用戶根據(jù)人機交互設(shè)備顯示的應(yīng)用軟件列表選擇待卸載應(yīng)用軟件,具體為人機交互設(shè)備依次通過驅(qū)動模塊、中間件將卸載應(yīng)用軟件選擇信息傳輸至PPS服務(wù),主控單元通過PPS服務(wù)獲取卸載應(yīng)用軟件選擇信息,并根據(jù)卸載應(yīng)用軟件選擇信息產(chǎn)生相應(yīng)的卸載應(yīng)用軟件控制指令。
[0087]B4卸載軟件通過PPS服務(wù)讀取主控單元的卸載應(yīng)用軟件控制指令,并根據(jù)卸載應(yīng)用軟件控制指令向主控單元請求停止正在運行的待卸載應(yīng)用軟件。所述向主控單元請求停止正在運行的待卸載應(yīng)用軟件的步驟具體如下:卸載單元通過PPS服務(wù)的\pps\services\app-laucher文件節(jié)點寫入停止指定應(yīng)用軟件的請求,主控單元通過PPS服務(wù)的\pps\services\app-laucher文件節(jié)點獲取停止指定應(yīng)用軟件的請求后,判斷指定應(yīng)用軟件是否正在運行,若沒有運行,則主控單元將完成停止指定的應(yīng)用軟件的信息寫入PPS服務(wù)的\pps\services\app_laucher文件節(jié)點;若指定應(yīng)用軟件正在運行,貝U主控單元停止指定的應(yīng)用軟件,并將完成停止指定的應(yīng)用軟件的信息寫入PPS服務(wù)的\pps\services\app-laucher文件節(jié)點。所述指定應(yīng)用軟件為用戶選擇的待卸載應(yīng)用軟件。
[0088]B5若卸載軟件通過PPS服務(wù)的\pps\services\app_laucher文件節(jié)點獲取到指定應(yīng)用軟件已被停止的信息,則執(zhí)行步驟B6,否則卸載過程中止返回BI。
[0089]B6卸載軟件刪除待卸載應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存。主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息。
[0090]B7卸載軟件更新PPS服務(wù)的軟件信息節(jié)點,具體為刪除PPS服務(wù)的\pps\foryou\applications文件節(jié)點中關(guān)于被卸載應(yīng)用軟件的應(yīng)用軟件信息。
[0091]B8主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。具體為主控單元獲取PPS服務(wù)的\pps\foryou\applications文件節(jié)點的更新信息后,讀取PPS服務(wù)的\pps\foryou\applications文件節(jié)點的信息,并更新主控單元運行狀態(tài)的應(yīng)用軟件列表。
[0092]上述安裝系統(tǒng)及卸載系統(tǒng)可集成于同一基于QNX操作系統(tǒng)的車載終端,使基于QNX的車載終端可實現(xiàn)應(yīng)用軟件的安裝和卸載,同時系統(tǒng)穩(wěn)定性高,安全性好。
[0093]上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的限制,其他的任何未背離本發(fā)明的精神實質(zhì)與原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種基于QNX的應(yīng)用軟件安裝系統(tǒng),包括: PPS服務(wù),為應(yīng)用軟件與主控單元間、安裝軟件與主控單元及應(yīng)用軟件間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道; 輸出顯示單元,將待安裝的應(yīng)用軟件安裝包信息、通過PPS服務(wù)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表進行輸出顯示; 輸入控制單元,通過PPS服務(wù)輸入安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息到主控單元; 主控單元,根據(jù)安裝軟件請求指令及待安裝的應(yīng)用軟件安裝包選擇信息產(chǎn)生相應(yīng)的安裝軟件控制指令;通過PPS服務(wù)與安裝軟件進行消息通知,根據(jù)安裝軟件的消息啟動/停止已安裝的應(yīng)用軟件;根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息; 安裝軟件,通過PPS服務(wù)獲取安裝軟件控制指令,并根據(jù)安裝軟件控制指令及待安裝的應(yīng)用軟件安裝包安裝對應(yīng)的應(yīng)用軟件;更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
2.根據(jù)權(quán)利要求1所述的基于QNX的應(yīng)用軟件安裝系統(tǒng),其特征在于:還包括用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,所述權(quán)限管理單元通過PPS服務(wù)與主控單元進行消息通知。
3.一種基于權(quán)利要求1或2所述的應(yīng)用軟件安裝系統(tǒng)的應(yīng)用軟件安裝方法,其特征在于,包括以下步驟: al安裝軟件獲取系統(tǒng)中待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱;a2安裝軟件判斷系統(tǒng)是更新 應(yīng)用軟件還是新安裝應(yīng)用軟件,若系統(tǒng)更新應(yīng)用軟件則執(zhí)行步驟a3,若系統(tǒng)新安裝應(yīng)用軟件則執(zhí)行步驟a4; a3安裝軟件刪除已安裝的同名應(yīng)用軟件的可執(zhí)行文件、UI資源、數(shù)據(jù)文件、圖標及緩存,執(zhí)行步驟a4; a4安裝軟件將待安裝的應(yīng)用軟件安裝包安裝到系統(tǒng)指定目錄中; a5安裝軟件更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點; a6主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。
4.根據(jù)權(quán)利要求3所述的應(yīng)用軟件安裝方法,其特征在于,所述安裝軟件判斷是更新應(yīng)用軟件還是安裝新應(yīng)用軟件的步驟具體為:安裝軟件通過PPS服務(wù)獲取系統(tǒng)中已安裝的所有應(yīng)用軟件的應(yīng)用軟件信息,判斷已安裝的所有應(yīng)用軟件中是否存在與待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱相同的應(yīng)用軟件,若存在則為更新應(yīng)用軟件,若不存在則為新安裝應(yīng)用軟件,所述應(yīng)用軟件信息包括:圖標文件名、可執(zhí)行文件名、類別、默認參數(shù)、優(yōu)先級信息及版本信息。
5.根據(jù)權(quán)利要求3或4所述的應(yīng)用軟件安裝方法,其特征在于:所述安裝軟件將待安裝的應(yīng)用軟件安裝包安裝到系統(tǒng)指定目錄中的步驟之前還包括安裝軟件對系統(tǒng)中待安裝的應(yīng)用軟件安裝包進行解包,并獲取安裝信息的步驟,所述安裝信息包括:安裝包名稱、版本、可執(zhí)行文件名以及圖標。
6.根據(jù)權(quán)利要求5所述的應(yīng)用軟件安裝方法,其特征在于:所述刪除已安裝的應(yīng)用軟件的可執(zhí)行文件、Π資源、數(shù)據(jù)文件、圖標及緩存的步驟之前還包括停止正在運行且與正在升級的應(yīng)用軟件名稱相同的應(yīng)用軟件的步驟。
7.根據(jù)權(quán)利要求6所述的應(yīng)用軟件安裝方法,其特征在于:在安裝軟件通過PPS服務(wù)獲取系統(tǒng)中待安裝的應(yīng)用軟件安裝包的應(yīng)用軟件名稱的步驟之后還包括校驗應(yīng)用軟件安裝包的簽名是否正確的步驟,若正確,則執(zhí)行步驟a2,若不正確,則安裝軟件進一步判斷系統(tǒng)是否設(shè)置可以安裝簽名不符的應(yīng)用軟件,若系統(tǒng)設(shè)置可以安裝簽名不符的應(yīng)用軟件,則執(zhí)行步驟a2,否則提示用戶應(yīng)用軟件簽名不正確,并結(jié)束安裝應(yīng)用軟件。
8.一種基于QNX的應(yīng)用軟件卸載系統(tǒng),包括: PPS服務(wù),為應(yīng)用軟件與主控單元間、卸載軟件與主控單元及應(yīng)用軟件間、主控單元與輸入控制單元及輸出顯示單元間提供信息存儲及數(shù)據(jù)交互通道; 輸出顯示單元,通過PPS服務(wù)獲取系統(tǒng)中已安裝的應(yīng)用軟件列表,并進行輸出顯示;輸入控制單元,通過PPS服務(wù)輸入卸載軟件請求指令、卸載應(yīng)用軟件選擇信息到主控單元; 所述主控單元根據(jù)卸載軟件請求指令產(chǎn)生應(yīng)用軟件列表獲取指令,根據(jù)卸載應(yīng)用軟件選擇信息,產(chǎn)生相應(yīng)的卸載軟件控制指令,通過PPS服務(wù)與卸載軟件進行消息通知,根據(jù)卸載軟件的停止待卸載應(yīng)用軟件請求指令停止相應(yīng)的應(yīng)用軟件,根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息; 卸載軟件,通過PPS服務(wù)獲取卸載軟件控制指令,并根據(jù)卸載軟件控制指令向主控單元請求停止正在運行的待卸載應(yīng)用軟件,收到主控單元完成停止待卸載應(yīng)用軟件的信息后卸載系統(tǒng)中相應(yīng)的應(yīng)用軟件; 更新應(yīng)用軟件信息到PPS服務(wù)的軟件信息節(jié)點。
9.根據(jù)權(quán)利要求8所述的基于QNX的應(yīng)用軟件卸載系統(tǒng),其特征在于:還包括用于存儲系統(tǒng)中應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息的權(quán)限管理單元,所述權(quán)限管理單元通過PPS服務(wù)與主控單元進行消息通知。
10.一種基于權(quán)利要求9所述的應(yīng)用軟件卸載系統(tǒng)的應(yīng)用軟件卸載方法,包括以下步驟: bl卸載軟件查詢PPS服務(wù)的軟件信息節(jié)點獲取已安裝的應(yīng)用軟件列表,所述應(yīng)用軟件列表包括應(yīng)用軟件的安裝路徑信息及其相關(guān)權(quán)限信息;b2用戶根據(jù)應(yīng)用軟件列表選擇待卸載的應(yīng)用軟件;b3用戶根據(jù)人機交互設(shè)備顯示的應(yīng)用軟件列表選擇待卸載應(yīng)用軟件;b4卸載軟件通過PPS服務(wù)向主控單元請求停止正在運行的待卸載應(yīng)用軟件;接收到主控單元完成停止請求的信息后執(zhí)行b5,否則卸載過程中止返回bl ; b5卸載軟件刪除待卸載應(yīng)用軟件的可執(zhí)行文件、Π資源、數(shù)據(jù)文件、圖標及緩存; b6卸載軟件更新PPS服務(wù)的軟件信息節(jié)點; b7主控單元根據(jù)PPS服務(wù)的軟件信息節(jié)點更新信息更新系統(tǒng)的應(yīng)用軟件信息及權(quán)限管理單元。
【文檔編號】G06F9/46GK103617058SQ201310627717
【公開日】2014年3月5日 申請日期:2013年11月28日 優(yōu)先權(quán)日:2013年11月28日
【發(fā)明者】尚平, 鄧秀聰, 葉壘 申請人:惠州華陽通用電子有限公司