本申請涉及計算機通信技術領域,具體涉及一種app應用調試方法以及一種app應用調試裝置;本申請同時涉及一種電子設備。
背景技術:
基于互聯(lián)網的app應用開發(fā)模式日益普及,在這個模式下,網絡平臺將自身的資源開放給開發(fā)者來調用,具體而言,通過對外提供的開放的api接口以及各類標準的資源環(huán)境,方便各類第三方開發(fā)者利用各類網絡平臺開發(fā)相關的app應用。這種面向開發(fā)者開放網絡平臺的方式,降低了第三方開發(fā)者開發(fā)app應用的難度,具有很強的吸引力。
在上述基于網絡平臺的app應用開發(fā)模式中,需要對外提供的統(tǒng)一的網絡平臺,根據(jù)開發(fā)過程和運行過程的不同需要,所述網絡平臺包括調試平臺和運行平臺。所述調試平臺僅僅供app應用開發(fā)者調試和修改所述app應用的過程中使用,不具備真實的運行環(huán)境;而所述運行平臺供所述app應用實際運行使用。
每個app應用均需要使用數(shù)據(jù)表記錄app應用的基本屬性和所使用的資源和api接口以及相關參數(shù)等信息?,F(xiàn)有技術下,上述記載app應用信息的數(shù)據(jù)表在調試平臺和運行平臺各存儲一份,并通過相互之間的消息機制進行同步,以保持調試平臺和運行平臺的一致性,這樣,當所述app應用的開發(fā)者在所述調試平臺對app應用的參數(shù)進行調整后,就可以通過兩個平臺之間的數(shù)據(jù)同步機制,將所述修改同步到運行平臺,實現(xiàn)對運行平臺上實際運行的app應用的修改。
但上述技術方案具有明顯的缺陷。
首先,由于兩個平臺的數(shù)據(jù)表的同步并不能保證完全同步,因此,開發(fā)者在所述調試平臺對所述app應用的參數(shù)進行調整后,不能直接將調試平臺的數(shù)據(jù)同步到運行平臺,而是需要首先比較兩個平臺維護的數(shù)據(jù)表的數(shù)據(jù),根據(jù)變化情況進行調整,這種比較需要多個字段逐一比對,耗費時間很長,并且過程復雜,出錯概率大。
其次,該方案需要維護兩個平臺之間的消息機制,造成通訊資源的消耗。由 于運行平臺中的數(shù)據(jù)發(fā)生修改時,接入中心無法感知,會造成兩個平臺的數(shù)據(jù)不一致,針對這個問題,需要建立隨時維護兩個平臺之間的數(shù)據(jù)同步的消息機制,但消息延時和無序問題,會影響數(shù)據(jù)的一致性,維護成本很高。
由此可見,在現(xiàn)有應用的調試方案下,app應用更新過程比較繁瑣,調試效率低;特別是,如果運行平臺中的數(shù)據(jù)發(fā)生了修改,調試平臺無法感知,會造成數(shù)據(jù)不一致性,加大對app應用更新的難度。
技術實現(xiàn)要素:
本申請?zhí)峁┮环Napp應用更新方法以及一種app應用更新裝置,以解決現(xiàn)有技術中的上述問題。本申請同時涉及一種電子設備。
本申請?zhí)峁┝艘环Napp應用更新方法,所述app應用更新方法包括:
根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);
接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;
在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試;
若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
可選的,所述接收對所述app應用的需求定義,包括以下方式:
接收通過輸入方式提出的需求定義;或者
接收運行過程中自動產生的需求定義。
可選的,所述接收對所述app應用的需求定義,通過下述步驟實現(xiàn):
提供app應用可用需求的提示信息;
接收根據(jù)所述提示信息的輸入,所述輸入為對應所述提示信息的對所述app 應用的需求定義。
可選的,所述提供app應用可用需求的提示信息,采用如下方式:
以預定的流程提供app應用可選需求定義的提示信息;或者
以預定的格式提供app應用可選需求定義的提示信息。
可選的,所述基本數(shù)據(jù)表和對應設置的補丁數(shù)據(jù)表,包括根據(jù)app應用的特性設置的多個表,各個表分別提供確定類型的屬性字段。
可選的,所述基本數(shù)據(jù)表包括應用表;對應的,所述補丁數(shù)據(jù)表包括應用補丁表;所述應用補丁表除了包括所述app應用標識號,還包括如下屬性字段的至少一項:用戶名、審批意見、應用狀態(tài)、數(shù)據(jù)同步、審核人、申請人、下發(fā)地址、字符編碼、報文格式、超時時間、是否統(tǒng)一配置、沙箱賬號、主鍵、創(chuàng)建時間、修改時間、是否刪除字段、擴展鍵-值屬性、應用標簽。
可選的,所述基本數(shù)據(jù)表包括資源基本表;對應的,所述補丁數(shù)據(jù)表包括資源補丁表,所述資源補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:增加的資源、刪減的資源、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,所述基本數(shù)據(jù)表包括關聯(lián)api基本表;對應的,所述補丁數(shù)據(jù)表包括關聯(lián)api補丁表,所述關聯(lián)api補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:關聯(lián)類型、api名、參數(shù)名、參數(shù)值、操作、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,所述關聯(lián)api補丁表采用垂直表形式。
可選的,所述基本數(shù)據(jù)表包括應用表、資源基本表、api基本表,相應的,所述補丁數(shù)據(jù)表包括對應所述應用表的應用補丁表,對應所述資源基本表的資源補丁表,對應所述api基本表的關聯(lián)api補丁表;
所述應用補丁表除了包括所述app應用標識號,還包括如下屬性字段的至少一項:用戶名、審批意見、應用狀態(tài)、數(shù)據(jù)同步、審核人、申請人、下發(fā)地址、字符編碼、報文格式、超時時間、是否統(tǒng)一配置、沙箱賬號、主鍵、創(chuàng)建時間、修改時間、是否刪除字段、擴展鍵-值屬性、應用標簽;
所述資源補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:增加的資源、刪減的資源、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段;
所述關聯(lián)api補丁表除了包括app應用標識號,還包括如下屬性字段的至少 一項:關聯(lián)類型、api名、參數(shù)名、參數(shù)值、操作、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,若所述app應用尚未創(chuàng)建,并需要創(chuàng)建app應用,則創(chuàng)建所述app應用包括如下順序執(zhí)行的步驟:在調試環(huán)境創(chuàng)建應用、綁定資源、關聯(lián)api、聯(lián)調測試、申請發(fā)布;
所述在調試環(huán)境創(chuàng)建應用包括在調試平臺上生成所述app應用相關的所述基本數(shù)據(jù)表和應用補丁表,向所述基本數(shù)據(jù)表和所述補丁數(shù)據(jù)表提供app應用的初始數(shù)據(jù);所述基本數(shù)據(jù)表所包括的與實際應用環(huán)境相關屬性的數(shù)據(jù)設定為空值或者預定的初始值,其它數(shù)據(jù)根據(jù)所述應用補丁表的屬性字段的屬性值確定,所述應用補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;
所述綁定資源,包括在調試平臺上創(chuàng)建所述app應用相關的所述基本資源表和資源補丁表;所述資源基本表的數(shù)據(jù)來自所述資源補丁表的記錄,所述資源補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;
所述關聯(lián)api,包括在調試平臺上創(chuàng)建所述app應用相關的所述api基本表和關聯(lián)api補丁表;所述api基本表的數(shù)據(jù)來自所述關聯(lián)api補丁表的記錄,所述關聯(lián)api補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;
所述聯(lián)調測試,包括以上述步驟中設置的基本數(shù)據(jù)表、資源基本表和api基本表以及各自對應的補丁表為依據(jù),對所述app應用進行是否可以在運行平臺運行的測試;
所述申請發(fā)布,是在聯(lián)調測試通過后申請在運行平臺上正式上線所述app應用。
可選的,若需要修改所述app應用的應用表的屬性值,則所述接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,包括:
所述接收對所述app應用的需求定義,是通過調試平臺接收與所述app應用的應用表的相關的屬性值要求;
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的應用表,將所述屬性值要求與所述app應用的應用表的實際屬性值相比對,獲得所述應 用表的需要更新的相關屬性字段的屬性值作為所述app應用的更新需求;
所述將待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,是根據(jù)所述更新需求,在所述應用補丁表的相關屬性字段中記錄相應的屬性值。
可選的,所述app應用更新方法,包括:刪除應用的操作,所述刪除應用的操作中,包括記錄刪除要求、正式刪除;所述記錄刪除要求包括:
接收來自所述調試平臺的刪除請求;
根據(jù)所述刪除請求,訪問對應的app應用的基本數(shù)據(jù)表,并根據(jù)所述基本數(shù)據(jù)表的屬性值記錄,獲得刪除所述app應用需要進行的處理,并將這些處理要求根據(jù)不同的類型分別以屬性值的方式,記錄在所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的相應的屬性字段中;
所述正式刪除,是根據(jù)所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的屬性值記錄,對所述app應用進行刪除,包括釋放相關資源和api接口;執(zhí)行完畢后,向所述調試平臺返回刪除操作的執(zhí)行結果。
可選的,所述app應用更新方法,包括查詢所述app應用基本參數(shù)的查詢操作,所述查詢操作包括:
接收來自所述調試平臺的針對所述app應用基本數(shù)據(jù)的查詢請求;
根據(jù)所述查詢請求,訪問所述應用表,獲得需要查詢的查詢數(shù)據(jù);
根據(jù)所述應用表,訪問對應所述應用表的應用補丁表;
合并所述應用表和應用補丁表的查詢數(shù)據(jù)獲得查詢結果;
通過所述調試平臺輸出所述查詢結果。
可選的,所述app應用更新方法,包括查詢統(tǒng)一配置的操作,所述查詢統(tǒng)一配置的操作包括:
調試平臺接收向所述應用補丁表提出的對統(tǒng)一配置屬性的查詢請求;
向所述應用補丁表查詢相關屬性字段;
返回查詢結果。
可選的,所述app應用更新方法,包括查詢綁定資源的操作,所述查詢綁定資源的操作包括:
接收來自所述調試平臺的查詢請求;
根據(jù)所述訪問請求,訪問所述資源基本表和所述資源補丁表;
獲得所述資源基本表提供的已綁定資源數(shù)據(jù)和所述資源補丁表記錄的對綁定資源的待更新需求;
合并所述已綁定資源數(shù)據(jù)和對綁定資源的待更新需求的數(shù)據(jù),獲得所述app應用的綁定資源記錄作為查詢結果;
將所述查詢結果通過所述應用平臺輸出。
可選的,若需要修改所述app應用的綁定資源,則:
所述接收對所述app應用的需求定義中,所述app應用需求定義涉及的需求為所述app應用的綁定資源需求;
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的資源基本表,將所述所述app應用的綁定資源需求與所述app應用的資源基本表的實際綁定資源相比對,獲得所述資源基本表的需要更新的綁定資源作為所述app應用的待更新需求;
所述將待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,是根據(jù)所述待更新需求,在所述資源補丁表的相關字段中記錄相應的資源標識。
可選的,所述app應用更新方法,包括查詢未關聯(lián)api的操作,所述查詢未關聯(lián)api的操作包括:
通過所述調試平臺接收對api配置提出的查詢請求;
通過所述運行平臺訪問所述api配置管理系統(tǒng),并從所述api配置管理系統(tǒng)獲取所有api接口;以及
通過所述調試平臺接收向所述api基本表提出的查詢請求,查詢獲得所述app應用的關聯(lián)api;
通過調試平臺接收上述步驟獲得的所述所有api接口與所述api基本表中的關聯(lián)api的查詢結果;
從所述所有api接口中剔除所述關聯(lián)api,獲得未關聯(lián)api信息;
輸出未關聯(lián)api信息。
可選的,所述app應用更新方法,包括查詢關聯(lián)api的操作,所述查詢關聯(lián)api的操作包括:
通過所述調試平臺接收向所述api基本表提出的查詢請求;
向所述api基本表發(fā)出查詢命令,查詢獲得所述api基本表中記錄的關聯(lián)api數(shù)據(jù),以及,向所述關聯(lián)api補丁表發(fā)出查詢命令,查詢獲得所述關聯(lián)api補丁表中記錄的關聯(lián)api更新數(shù)據(jù);
合并所述api基本表的關聯(lián)api數(shù)據(jù)和所述關聯(lián)api補丁表中的關聯(lián)api更新數(shù)據(jù)獲得完整關聯(lián)api數(shù)據(jù);
輸出所述完整關聯(lián)api數(shù)據(jù)。
可選的,若需要修改所述app應用的關聯(lián)api,則:
所述接收對所述app應用的需求定義中,所述app應用需求定義涉及的需求為所述app應用的關聯(lián)api需求;
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的api基本表,將所述所述app應用的關聯(lián)api需求與所述app應用的api基本表的實際記錄的api接口相比對,獲得所述api基本表的需要更新的關聯(lián)api接口作為所述app應用的待更新需求;
所述將更新要求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,是根據(jù)所述待更新需求,即需要更新的關聯(lián)api接口,在所述關聯(lián)api補丁表的相關屬性字段中記錄相應的屬性值。
相應的,本申請還提供了一種app應用更新裝置,所述app應用更新裝置包括:數(shù)據(jù)表設置單元、屬性字段記錄單元、測試單元以及更新單元;
所述數(shù)據(jù)表設置單元,用于根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);
所述屬性字段記錄單元,用于接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;
所述測試單元,用于在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試;
所述更新單元,用于接收所述測試單元的測試結果,若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
此外,本申請還提供了一種電子設備,包括:
顯示器;
處理器;
存儲器,用于存儲app應用調試程序,所述程序在被所述處理器讀取執(zhí)行時,執(zhí)行如下操作:根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試;若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
與現(xiàn)有技術相比,本申請具有以下優(yōu)點:
本申請?zhí)峁┑囊环Napp應用更新方法、裝置以及電子設備。該app應用的更新方法,根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);需要對所述app應用進行更新操作時,接收更新所述app應用參數(shù)的更新要求,并將更新要求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;在預定的實際,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試,若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表記錄的屬性值為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。所述技術方案解決了應用調試后的數(shù)據(jù)同步過程比較繁瑣,調試的效率低的問題; 并且不再需要維護調試平臺和運行平臺的兩個數(shù)據(jù)表,從而可以不再建立實現(xiàn)兩個數(shù)據(jù)表之間同步的消息機制。
附圖說明
為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,還可以根據(jù)這些附圖獲得其他的附圖。
圖1示出了根據(jù)本申請的實施例提供的app應用更新方法的流程圖;
圖2示出了根據(jù)本申請的實施例提供的創(chuàng)建app應用的流程圖;
圖3示出了根據(jù)本申請的實施例提供的刪除應用的操作的流程圖;
圖4示出了根據(jù)本申請的實施例提供的查詢app應用的基本參數(shù)的操作的流程圖;
圖5示出了根據(jù)本申請的實施例提供的查詢綁定資源的操作的流程圖;
圖6示出了根據(jù)本申請的實施例提供的查詢未關聯(lián)api的操作的流程圖;
圖7示出了根據(jù)本申請的實施例提供的查詢關聯(lián)api的操作的流程圖;
圖8示出了根據(jù)本申請的實施例提供的app應用調試裝置的示意圖;
圖9示出了根據(jù)本申請的實施例提供的電子設備的示意圖。
具體實施方式
為了能夠更清楚地理解本申請的上述目的、特征和優(yōu)點,下面結合附圖和具體實施方式對本申請進行進一步的詳細描述。需要說明的是,在不沖突的情況下,本申請的實施例及實施例中的特征可以相互組合。
在下面的描述中闡述了很多具體細節(jié)以便于充分理解本申請。但是,本申請能夠以很多不同于在此描述的其它方式來實施,本領域技術人員可以在不違背本申請內涵的情況下做類似推廣,因此,本申請不受下面公開的具體實施的限制。
本申請的實施例提供了一種app應用調試方法以及一種app應用調試裝置;本申請的實施例同時提供了一種電子設備。在下面的實施例中逐一進行詳細說明。
在詳細描述本實施例的具體步驟之前,先對本技術方案涉及的app應用調試作簡要說明。
app是應用程序application的縮寫,一個應用程序通常是指能夠執(zhí)行某種功能的軟件程序。比如,文字處理程序、數(shù)據(jù)庫程序、網絡瀏覽器、開發(fā)工具、繪圖、圖像編輯工具以及通信工具等等都可以是應用程序。app能夠利用計算機操作系統(tǒng)的某些服務,也可以利用其它應用程序所支持的服務。作為本申請?zhí)峁┑募夹g方案的一種可能的具體應用場景,app作為指物流商在接入物流管理平臺的過程中,抽象的基本數(shù)據(jù),一個物流商可以有多個app應用,在應用里面,包含物流商接入的身份標識信息等。通常,app與操作系統(tǒng)或其它應用程序進行交互的應用程序請求稱為應用程序接口,也就是常常提起的api或者api接口。
在本申請中涉及的app應用調試包括:創(chuàng)建新的app應用時,為應用環(huán)境相關屬性的數(shù)據(jù)設定為空值或者預定的初始值的調試過程,以及對已創(chuàng)建好的app應用進行部分調整的調試過程。在app應用上線使用后,經常需要對其進行更新,這些更新主要涉及以下三個方面:
1、app應用本身的參數(shù)需要更新;
2、app應用所使用的資源需要更新,包括增加和刪除;如所述app應用需要增加倉庫資源的綁定,增加新的網絡接口等;
3、app應用所使用的api接口需要更新,包括增加和刪除,以及對各個api接口的相關參數(shù)進行調整。
本申請的實施例提供了一種app應用更新方法。所述app應用更新方法實施例如下:
請參考圖1,其示出了根據(jù)本申請的實施例提供的app應用更新方法的流程圖。以下結合圖1予以說明。
步驟s101,根據(jù)app應用的運行環(huán)境,對應所述app應用運行中的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用調試過程中需要改變的數(shù)據(jù);所述數(shù)據(jù) 基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián)。
所述app應用,是指運行在特定運行平臺上—即運行環(huán)境--的應用程序,尤其是指運行在網絡運行平臺上的應用程序。
一個app應用需要在特定運行平臺上發(fā)布之前,一般需要在調試平臺上進行調試,通過調試平臺能夠接收開發(fā)者對app應用的更改要求并對app應用進行修改,并可以模擬運行環(huán)境進行調試運行,而不會引起實際運行平臺上的數(shù)據(jù)變化。
根據(jù)不同的需求,app應用可以有不同的運行平臺,以及對應的不同的調試平臺。本實施例以下述實際的運行平臺為例:所述運行平臺是菜鳥連接平臺,為物流商提供統(tǒng)一的api接口,在該平臺中的數(shù)據(jù)是線上運行的數(shù)據(jù);所述調試平臺是菜鳥物流商的接入平臺,物流商在該接入平臺中創(chuàng)建app應用后,能在該平臺中維護app應用的各種參數(shù)。
根據(jù)不同的app應用的運行平臺需要,記錄app應用相關的數(shù)據(jù)和參數(shù)的數(shù)據(jù)表可以采用不同的形式。對于運行平臺而言,數(shù)據(jù)表由于需要涉及實際運行中產生的數(shù)據(jù),其數(shù)據(jù)內容在app應用的運行過程中會發(fā)生變化。本實施例中采用的技術方案,是在運行平臺維護完整的與app應用實際運行關聯(lián)的數(shù)據(jù)表,該數(shù)據(jù)表稱為基本數(shù)據(jù)表;在調試平臺,則維護一個補充數(shù)據(jù)表,該補充數(shù)據(jù)表并不包含app應用實際運行需要的全部數(shù)據(jù),而僅僅記錄通過調試平臺接收到的對app應用的各種參數(shù)的更新要求。
本申請的技術方案依據(jù)調試平臺的補丁數(shù)據(jù)表的記錄,在適當?shù)臅r機,向運行平臺發(fā)布補丁數(shù)據(jù),實現(xiàn)對app應用的更新,所以,所述基本數(shù)據(jù)表和對應設置的所述補丁數(shù)據(jù)表分別存儲在運行平臺與調試平臺上。其中,所述基本數(shù)據(jù)表記錄的是所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),存儲在運行平臺上,其中的數(shù)據(jù)隨著app應用的運行會發(fā)生變化;所述補丁數(shù)據(jù)表,記錄的是app應用需要更新的數(shù)據(jù),存儲在調試平臺上,其中的數(shù)據(jù)根據(jù)從調試平臺的接口接收的對app應用的更新要求或者其他能夠引起app應用更新的外部變化情況,并通過與運行平臺上app應用的基本數(shù)據(jù)表的比對,記錄的需要對基本數(shù)據(jù)表作出的更行操作的相關信息。
在本實施例中,所述基本數(shù)據(jù)表和對應設置的所述補丁數(shù)據(jù)表,包括根據(jù) app應用的特性設置的多個表,各個表分別提供預先確定類型的屬性數(shù)據(jù)。其中所述基本數(shù)據(jù)表包括:應用表、資源基本表以及api基本表,相應的按照基本數(shù)據(jù)表與補丁數(shù)據(jù)表的對應關系,所述補丁數(shù)據(jù)表包括應用補丁表、資源補丁表以及關聯(lián)api補丁表。各個基本表和補丁表,均具有對應的app應用的統(tǒng)一的app應用標識號,以實現(xiàn)相互關聯(lián)。
其中,應用補丁表除了包括所述app應用標識號,還包括如下屬性字段的至少一項:用戶名、審批意見、應用狀態(tài)、數(shù)據(jù)同步、審核人、申請人、下發(fā)地址、字符編碼、報文格式、超時時間、是否統(tǒng)一配置、沙箱賬號、主鍵、創(chuàng)建時間、修改時間、是否刪除字段、擴展鍵-值屬性、應用標簽。為了便于理解,下面舉一個例子說明本申請實施例提供的應用補丁表,所述應用補丁表如下表所示(在表中僅顯示字段名稱和字段類型):
具體詳見表一:
通過表一可見,所述應用補丁表的字段包括:appkey(app應用標識號),userid(用戶名)、opinion(審批意見)、status(應用狀態(tài))、sync(數(shù)據(jù)同步)、checker(審核人)、applicant(申請人)、url(下發(fā)地址)、code(字符編碼)、format(報文格式)、timeout(超時時間)、unify(是否統(tǒng)一配置)、it_id(沙箱賬號)、id(主鍵)、gmt_create(創(chuàng)建時間)、gmt_modified(修改時間)、is_delete(是否刪除字段)、features(擴展鍵-值屬性)以及tags(應用標簽)十九個字段,每個字段對應一個具體參數(shù)。下面對本技術方案涉及的字段做詳細說明。
所述應用補丁表中的app應用標識號字段是為第三方開發(fā)者提供的接口密鑰,僅僅是在程序api調用的范圍內適用的密鑰,appkey是根據(jù)特定的算法通過用戶id計算出的,也就是用戶id另外一種表示方式,保證具有唯一性,目前大多數(shù)采用的是簽名機制。
所述應用補丁表中的審批意見字段是經過聯(lián)調測試后對本次調試過程的審批意見,例如:通過或者不通過。
所述應用補丁表中的審核人字段是描述對本次調試過程進行聯(lián)調測試進行審核的用戶名稱。
所述應用補丁表中的沙箱賬號字段是用戶在調試平臺對所述應用做聯(lián)調測試時所用沙箱環(huán)境的用戶賬號。
所述應用補丁表中的創(chuàng)建時間字段是該應用補丁表的創(chuàng)建的當前系統(tǒng)時間,例如:可以利用系統(tǒng)提供的接口實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能,例如,可以使用系統(tǒng)提供的calendar類實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能。
所述應用補丁表中的修改時間字段是對該應用補丁表進行修改時的當前系統(tǒng)時間。
所述應用補丁表中的擴展鍵-值屬性字段是一個具體的值,值的形式多樣,例如:value是現(xiàn)實世界中的數(shù)據(jù),例如:對接應用的操作系統(tǒng)、內存、編程語 言等,而key就是給某個確定的數(shù)據(jù)起的名字,通過這個名字可以在數(shù)據(jù)集中找到這個數(shù)據(jù),這樣就可以對數(shù)據(jù)進行相應的操作。
需要說明的是,所述基本數(shù)據(jù)表中的應用表和所述補丁數(shù)據(jù)表中的應用補丁表具有對應關系,其中存儲在運行平臺的應用表和存儲在調試平臺的應用補丁表中的數(shù)據(jù)具有一定的差異,例如:應用補丁表中的opinion(審批意見)字段,是該app在調試階段時的審批結果,由于應用補丁表是調試階段的數(shù)據(jù),所以具有該字段,而運行平臺存儲的是線上數(shù)據(jù),所以在應用表中不具有opinion(審批意見)字段;在應用表中的密鑰、加密算法字段存儲的是物流商和運行平臺進行數(shù)據(jù)傳輸時使用的加密密鑰和對應的加密算法,在應用補丁表不會存儲這些數(shù)據(jù),所以在應用補丁表中不具有密鑰、加密算法字段。
可以理解的,在所述應用補丁表中設置的取值記錄了app應用的擴展信息、app應用的狀態(tài)以及調試系統(tǒng)的特定信息,包括該app應用上線前后的數(shù)據(jù)信息。在所述應用補丁表中包含在調試平臺中進行調試過程時使用的特殊字段,例如聯(lián)調的沙箱賬號,這些字段對于運行平臺是透明感知的。
此外,在所述調試平臺中設置的補丁數(shù)據(jù)表,還包括:資源補丁表,所述資源補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:增加的資源、刪減的資源、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。為了便于理解,下面舉一個例子說明本申請實施例提供的資源補丁表,所述資源補丁表如下表所示(在表中僅顯示字段名稱和字段類型):
具體詳見表二:
通過表二可見,所述資源補丁表的字段包括:appkey(app應用標識號), insert(增加的資源)、delete(刪除的資源)、id(主鍵)、gmt_create(創(chuàng)建時間)、gmt_modified(修改時間)以及is_delete(是否刪除字段)七個字段,每個字段對應一個具體參數(shù)。下面對本技術方案涉及的字段做詳細說明。
所述資源補丁表中的app應用標識號字段是為第三方開發(fā)者提供的接口密鑰,僅僅是在程序api調用的范圍內適用的密鑰,appkey是根據(jù)特定的算法通過用戶id計算出的,也就是用戶id另外一種表示方式,保證具有唯一性,目前大多數(shù)采用的是簽名機制。
所述資源補丁表中的增加的資源字段是該app應用在本次更新過程中申請新增加的資源。該app應用在本次調試過程中申請新增加的資源可以是物流商對應的配送站點資源或者是物流商用于倉儲的倉庫資源。
所述資源補丁表中的刪除的資源字段是該app應用在本次更新過程中申請刪除的資源。
所述資源補丁表中的創(chuàng)建時間字段是創(chuàng)建該應用補丁表的當前系統(tǒng)時間,例如:可以利用系統(tǒng)提供的接口實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能,例如,可以使用系統(tǒng)提供的calendar類實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能。
所述資源補丁表中的修改時間字段是對該應用補丁表進行修改時的當前系統(tǒng)時間。
可以理解的,存儲在調試平臺中的所述資源補丁表通過app應用標識號與存儲在運行平臺的基本資源表關聯(lián);調試者對資源的綁定的修改,維護到所述增加的資源和所述刪減的資源里,所述增加和刪減的資源,是對基本數(shù)據(jù)表而言的。
此外,在所述調試平臺中設置的補丁數(shù)據(jù)表,包括:關聯(lián)api補丁表,所述關聯(lián)api補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:關聯(lián)類型、api名、參數(shù)名、參數(shù)值、操作、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。為了便于理解,下面舉一個例子說明本申請實施例提供的關聯(lián)api補丁表,所述關聯(lián)api補丁表如下表所示(在表中僅顯示字段名稱和字段類型):
具體詳見表三:
通過表三可見,所述關聯(lián)api補丁表的字段包括:appkey(app應用標識號),type(關聯(lián)類型)、api_id(api)、key(鍵)、value(值)、operate(操作)、id(主鍵id)、gmt_create(創(chuàng)建時間)、gmt_modified(修改時間)以及is_delete(是否刪除字段)十個字段,每個字段對應一個具體參數(shù)。下面對本技術方案涉及的字段做詳細說明。
所述關聯(lián)api補丁表中的app應用標識號字段是為第三方開發(fā)者提供的對接標識,對應app應用表的appkey,僅僅是在程序api調用的范圍內適用的密鑰,appkey是根據(jù)特定的算法生成的6位隨機數(shù),保證具有唯一性,目前大多數(shù)采用的是簽名機制。
所述關聯(lián)api補丁表中的關聯(lián)類型字段是描述具體的api接口和該app應用關聯(lián)狀態(tài)的字符串,例如:服務注冊或者api訂閱,其中,服務注冊是指實現(xiàn)這個服務的api接口,api訂閱是指訂閱其他已經實現(xiàn)的api服務。
所述關聯(lián)api補丁表中的api字段是記錄已關聯(lián)的api接口id號的字段。
所述關聯(lián)api補丁表中的操作字段是將用戶的針對api的操作行為存儲在該字段當中。
所述關聯(lián)api補丁表中的創(chuàng)建時間字段是創(chuàng)建該關聯(lián)api補丁表的當前系統(tǒng)時間,例如:可以利用系統(tǒng)提供的接口實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能,例如,可以使用系統(tǒng)提供的calendar類實現(xiàn)上述獲取當前系統(tǒng)時間信息的功能。
所述關聯(lián)api補丁表中的修改時間字段是對該關聯(lián)api補丁表進行修改時的當前系統(tǒng)時間。
可以理解的,所述關聯(lián)api補丁表通過參數(shù)名、參數(shù)值,維護關聯(lián)api多 個信息;存儲在調試平臺中的所述關聯(lián)api補丁表通過app應用標識號和api名與存儲在運行平臺的所述api基本表進行關聯(lián);在所述關聯(lián)api補丁表中,將用戶的針對api的操作行為存儲在所述操作字段當中;所述操作行為包括增加api、刪除api、更新api;所述增加api、刪除api主要針對所調用的api的修改;所述更新api操作主要針對所述參數(shù)名、參數(shù)值的修改。
所述關聯(lián)api補丁數(shù)據(jù)表采用垂直表形式;即對應記錄字段名key和屬性值value。例如,某個api接口需要提供多個接口參數(shù),則順序記錄key和value,key記錄接口參數(shù)名稱,value記錄接口參數(shù)取值;而不是在一個字段名為“接口參數(shù)”的字段下記錄接口參數(shù)名稱,在一個字段名為“接口參數(shù)取值”的字段下對應記錄接口參數(shù)取值。
在本實施例中,由于設置的存儲在運行平臺中的基本數(shù)據(jù)表的存儲內容根據(jù)不同app應用有很大區(qū)別,在此不一一說明,總之,app應用的應用表記錄與該app應用自身相關的一些參數(shù);資源基本表記錄該app應用實際使用的資源;api基本表記錄該app應用實際使用的api接口。
步驟s103,接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中。
在本實施例中,接收對所述app應用參數(shù)的需求定義,是指對app應用提出的app應用參數(shù)、需要使用的資源或者需要使用的api接口等app應用運行涉及的各種特性、資源提出的增加、刪除、修改等要求。所述參數(shù)是可以增加或者刪除或者改變的,所述需要使用的資源或者需要使用的api接口是app應用運行平臺—即該app應用的運行環(huán)境—現(xiàn)實存在的;但是這些需求定義涉及的內容app應用可能已經使用、或者尚未使用,也可能需求定義中沒有要求使用的資源或者api接口,在所述app應用的實際運行中已經使用等等??傊鲂枨蠖x與app應用的實際情況可能存在差異,這是由于app應用可能涉及很多參數(shù)、資源和api接口,開發(fā)者不一定全部掌握,并且,由于app應用在使用中可能多次更新,開發(fā)者不一定掌握所有更新過程的情況;加之,app應用實際上在運行平臺上實時運行,開發(fā)者并不能很方便的直接查詢,因此,開發(fā)者最初往往不能知道app應用的實際狀態(tài),例如,可能不知道app應用實際使用了哪些資源或者實際使用了哪些api接口。
接收對所述app應用的需求定義可以有不同的渠道,包括接收通過輸入方式提出的需求定義;或者接收運行過程中自動產生的需求定義。
所述接收通過輸入方式提出的需求定義,是指該需求定義通過調試平臺為開發(fā)者提供的接口輸入,是開發(fā)者自己根據(jù)需要向所述app應用提出的。
所述接收運行過程中自動產生的需求定義,是指app應用實際運行過程中,產生的一些需求,例如,app應用經過長時間運行,產生的對app的api接口調用量和響應時間數(shù)據(jù)。
具體接收對所述app應用的需求定義的步驟,可以在所述調試平臺上通過下述步驟實現(xiàn):提供app應用可用需求的提示信息;接收根據(jù)所述提示信息的輸入,所述輸入為對應所述提示信息的對所述app應用的需求定義。
所述提供app應用可用需求的提示信息,包括:以預定的格式提供需要改變的app應用特性的提示信息,以及以預定的流程提供app應用可用需求的提示信息。
所述以預定的格式提供app應用可選需求定義的提示信息,是指以預定的表格或者選項等格式,向開發(fā)者展示app應用可選需求定義。例如,開發(fā)方認為需要為某個app應用增加資源,則可以進入所述調試平臺提供的可用資源列表,通過該資源列表勾選可以選擇的資源;或者,開發(fā)方需要app應用增加遠程訪問移動端存儲信息的功能,需要使用某個相關的api接口,則開發(fā)方可以進入所述調試平臺提供的api接口列表,在該列表的提示下進行勾選。
所述以預定的流程提供app應用可用需求的提示信息,例如,開發(fā)方需要為app應用增加某個功能,則通過調試平臺選擇引導模式,通過調試平臺的逐級引導,選擇需要增減的資源或者api接口作為更新需求。
所述根據(jù)所述需求定義生成待更新需求,是指獲得所述需求定義后,由于該需求定義是開發(fā)者單方面提出的,與所述app應用的實際情況可能存在出入,需要與app應用實際情況進行比較后才能得出真正需要的更新需求,即待更新需求。
例如,所述開發(fā)者在前述需求定義過程中,定義了倉庫資源1-倉庫資源3均為需要為app應用增加的可查詢倉庫資源,但是,所述app應用在前一次更新中已經將倉庫資源1定義為可查詢倉庫資源,則此次更新只需要增加倉庫資源2和數(shù)據(jù)庫3即可,在該例子中,通過與app應用的實際情況比較,獲得的 實際需要增加的倉庫資源就是所述待更新需求。
獲得所述待更新需求后,還需要將其記錄在所述補丁數(shù)據(jù)表中,才能作為下次更新的依據(jù)。具體記錄方式,是根據(jù)所述待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中。例如,確定需要增加倉庫資源2和倉庫資源3,則將倉庫資源2和倉庫資源3的資源名稱寫入所述app應用的資源補丁數(shù)據(jù)表的insert字段中,這樣就記錄了需要增加的資源。
以下分別說明更新應用表的屬性值,以及更新資源和更新api的過程中,本步驟的具體實現(xiàn)方式。
若需要修改所述app應用的應用表的屬性值,則所述接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,包括:
所述接收對所述app應用的需求定義,是通過調試平臺接收與所述app應用的應用表的相關的屬性值要求;
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的應用表,將所述屬性值要求與所述app應用的應用表的實際屬性值相比對,獲得所述應用表的需要更新的相關屬性字段的屬性值作為更新所述app應用特性的更新需求;
所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,是根據(jù)所述更新需求,在所述應用補丁表的相關屬性字段中記錄相應的屬性值。
若需要修改所述app應用的綁定資源,則所述接收對所述app應用的需求定義中,所述app需求定義涉及的需求為所述app應用的綁定資源需求;例如,通過所述調試平臺的界面接收開發(fā)者輸入的要求app應用綁定倉庫資源1-倉庫資源3的綁定資源需求。
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的資源基本表,將所述所述app應用的綁定資源需求與所述app應用的資源基本表的實際綁定資源相比對,獲得所述資源基本表的需要更新的綁定資源作為所述app應用的更新需求;例如,所述app應用實際已經綁定了倉庫資源1作為其資源,則更新需求為增加倉庫資源2和倉庫資源3作為該app應用的綁定資源。
所述將待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段 中,是根據(jù)所述待更新需求,在所述資源補丁表的相關字段中記錄相應的資源標識。例如,需要為app應用增加倉庫資源2,則在所述資源補丁表的insert屬性字段中,記錄倉庫資源2、倉庫資源3的資源標識號作為屬性值。
若需要修改所述app應用的關聯(lián)api,則:
所述接收對所述app應用的需求定義中,所述app應用需求定義涉及的需求為所述app應用的關聯(lián)api需求;例如,通過所述調試平臺的接口,提出所述app需要關聯(lián)一個調用攝像頭的api接口;
所述根據(jù)所述需求定義生成待更新需求,是訪問所述app應用的api基本表,將所述所述app應用的關聯(lián)api需求與所述app應用的api基本表的實際記錄的api接口相比對,獲得所述api基本表的需要更新的關聯(lián)api接口作為所述app應用的待更新需求;例如,根據(jù)對api基本表的訪問,發(fā)現(xiàn)所述需要關聯(lián)的回傳物流詳情的api接口未記錄在api基本表中,則增加該回傳物流詳情的關聯(lián)api接口就成為了待更新需求;
所述將更新要求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,是根據(jù)所述待更新需求,即需要更新的關聯(lián)api接口,在所述關聯(lián)api補丁表的相關屬性字段中記錄相應的屬性值。例如,在所述關聯(lián)api補丁表中,在屬性字段key中記錄所述回傳物流詳情的api接口的名稱,并在后續(xù)的value中記錄與該api接口相關的參數(shù)。
以上分別說明了通過各自對應的補丁表,對應用表、資源基本表、api基本表等進行更新的過程,實際上,可以同時或者不同時間,對上述三個數(shù)據(jù)表或者其中任意兩個數(shù)據(jù)表涉及的app應用屬性提出需求定義。
步驟s105,在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試。
由于所述app應用在運行平臺上的運行不能隨意打斷,因此,并不是隨時可以對app應用進行更新,進行更新需要在合適的實際,例如,對于一個不斷接收實時數(shù)據(jù)的app應用,可以在實時數(shù)據(jù)更新較少的時段進行更新。并且,并非任何提出的更新都是合理的,需要進行聯(lián)調測試,通過后方可正式實施所述更新。所謂聯(lián)調測試,即連接調試平臺和運行平臺,測試作出所述更新后,該app應用是否可以在運行平臺的實際運行環(huán)境中正常運行。該步驟是進行app應用調試和更新的標準過程,在此不詳細說明。在本方案中,所述對app應用 的更新已經在前一步驟中以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中,因此,本步驟的聯(lián)調測試就是以此為依據(jù)的。
步驟s107,若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
本步驟是實現(xiàn)對運行平臺的app應用的更新,該更新具體是根據(jù)補丁數(shù)據(jù)表的屬性值記錄,對所述app應用的基本數(shù)據(jù)表的數(shù)據(jù)進行更新,從而實現(xiàn)對app應用的各個類型的參數(shù)的更新。
上述實施例可以看出,本技術方案中,采用數(shù)據(jù)補丁表記錄需要對app應用做的更新,然后在預定的時段實現(xiàn)所述更新。此種方法避免了現(xiàn)有技術下需要在調試平臺和應用平臺分別維護兩個完整數(shù)據(jù)表造成的問題。其中調試平臺的補丁數(shù)據(jù)表記錄的實際上是對app應用更新所需要的操作,所以可以直接根據(jù)補丁數(shù)據(jù)表對基本數(shù)據(jù)表進行更新。
在使用上述調試平臺維護補丁數(shù)據(jù)表,運行平臺維護基本數(shù)據(jù)表的方式下,還可以在此基礎上進行其他相關的操作,這些操作或者可以視為廣義的app應用的更新方法,或者可以視為為實現(xiàn)所述app應用更新方法而提供的app應用更新方法輔助操作。
所述廣義的app應用更新操作,例如包括創(chuàng)建app應用以及刪除app應用。
所述app應用更新方法輔助操作,例如包括查詢所述app應用的各種數(shù)據(jù)的查詢操作,包括查詢app應用的基本參數(shù)、查詢綁定資源的操作、查詢關聯(lián)或者未關聯(lián)api數(shù)據(jù)的操作。
以下對上述以上述設置基本數(shù)據(jù)表和補丁數(shù)據(jù)表的系統(tǒng)進行上述相關操作的方式分別予以說明。
所述創(chuàng)建app應用,是指所述app應用尚未在運行平臺運行,需要將一個app應用建立起來的過程。
所述創(chuàng)建app應用,包括如下順序執(zhí)行的步驟:創(chuàng)建應用、綁定資源、關聯(lián)api、聯(lián)調測試、申請發(fā)布。以下結合圖2予以說明。
請參考圖2,其示出了根據(jù)本申請的實施例提供的創(chuàng)建app應用的流程圖。
步驟s201,在調試環(huán)境創(chuàng)建應用。
所述在調試環(huán)境創(chuàng)建應用,是指在調試平臺上的創(chuàng)建應用,與本方法所述的創(chuàng)建app應用相比,本方法提供的將app應用創(chuàng)建到運行平臺上運行起來的 過程,而本步驟僅僅是在調試平臺上初步創(chuàng)建一個app應用,對應的是調試環(huán)境。包括在調試平臺上生成所述app應用相關的所述基本數(shù)據(jù)表和應用補丁表,向所述基本數(shù)據(jù)表和所述補丁數(shù)據(jù)表提供app應用的初始數(shù)據(jù);所述基本數(shù)據(jù)表所包括的與實際應用環(huán)境相關屬性的數(shù)據(jù)設定為空值或者預定的初始值,其它數(shù)據(jù)根據(jù)所述應用補丁表的屬性字段的屬性值確定,所述應用補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得。具體從調試平臺接收外部輸入獲得補丁表的屬性字段的屬性值的過程,可以有不同的方法,前面已經提及,在此不再說明。
步驟s202,綁定資源。
所述綁定資源,包括在調試平臺上創(chuàng)建所述app應用相關的所述基本資源表和資源補丁表;所述資源基本表的數(shù)據(jù)來自所述資源補丁表的記錄,所述資源補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;即,在本方案下,數(shù)據(jù)基礎表的數(shù)據(jù)全部都是來自對應的補丁表。本步驟解決該app應用所需要的資源的綁定問題。
步驟s203,關聯(lián)api。
所述關聯(lián)api,包括在調試平臺上創(chuàng)建所述app應用相關的所述api基本表和關聯(lián)api補丁表;所述api基本表的數(shù)據(jù)來自所述關聯(lián)api補丁表的記錄,所述關聯(lián)api補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得。本步驟將該app應用所需要的api接口設置好。
步驟s204,聯(lián)調測試。
所述聯(lián)調測試,包括以上述步驟中設置的基本數(shù)據(jù)表、資源基本表和api基本表以及各自對應的補丁表為依據(jù),對所述app應用進行是否可以在運行平臺運行的測試。即根據(jù)上述基本數(shù)據(jù)表和補丁數(shù)據(jù)表的數(shù)據(jù),對app應用進行設置,并聯(lián)通調試平臺和運行平臺,對app應用進行實際運行是否可行的測試。當然,所述聯(lián)調測試,包括以上述步驟中設置的基本數(shù)據(jù)表、資源基本表和api基本表以及各自對應的補丁表為依據(jù),對所述app應用進行是否可以在運行平臺運行的測試;聯(lián)調測試涉及很多復雜的問題,不僅僅是數(shù)據(jù)表的數(shù)據(jù)設置的問題,由于并非本發(fā)明重點,在此不予詳細說明。
步驟s205,申請發(fā)布。
所述申請發(fā)布,是在聯(lián)調測試通過后申請在運行平臺上正式上線所述app 應用。前述步驟調試成功后,只要將app應用申請在運行平臺上正式上線即可。上線時,同時將基本數(shù)據(jù)表上線,為app應用提供運行所需要的各種數(shù)據(jù)支持,包括關聯(lián)api以及綁定資源等數(shù)據(jù)。至此,創(chuàng)建一個新的app應用并實際運行的過程全部完成。
所述刪除app應用,是指將已經運行的app應用從運行平臺刪除。在采用基本數(shù)據(jù)表和補丁數(shù)據(jù)表的情況下,刪除app應用同樣可以通過補丁數(shù)據(jù)表和基本數(shù)據(jù)表的關聯(lián)機制實現(xiàn)。
所述刪除應用的操作中,包括記錄刪除要求、正式刪除兩個步驟,以下結合圖3對該刪除應用的操作進行說明。
請參考圖3,其示出了根據(jù)本申請的實施例提供的刪除應用的操作的流程圖。
步驟s301,記錄刪除要求。
該步驟下,首先接收來自所述調試平臺的刪除請求;根據(jù)所述刪除請求,訪問對應的app應用的基本數(shù)據(jù)表,并根據(jù)所述基本數(shù)據(jù)表的屬性值記錄,獲得刪除所述app應用需要進行的處理,并將這些處理要求根據(jù)不同的類型分別以屬性值的方式,記錄在所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的相應的屬性字段中。
步驟s302,正式刪除。
所述正式刪除,是根據(jù)所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的屬性值記錄,對所述app應用進行刪除,包括釋放相關資源和api接口;執(zhí)行完畢后,向所述調試平臺返回刪除操作的執(zhí)行結果。該正式刪除的過程,可以選擇適當?shù)臅r機進行。當然,刪除app應用可能還涉及其他操作,本申請側重說明與使用基本數(shù)據(jù)表和補丁數(shù)據(jù)表機制相關的過程。
所述查詢app應用的基本參數(shù)的操作,同樣可以通過所述應用表和應用補丁表實現(xiàn)。以下結合圖4,具體說明如下。
請參考圖4,其示出了根據(jù)本申請的實施例提供的查詢app應用的基本參數(shù)的操作的流程圖。
步驟s401,接收來自所述調試平臺的針對所述app應用基本數(shù)據(jù)的查詢請求。
本步驟通過調試平臺提供的接口,接收查詢請求,該查詢請求針對的是app 應用的基本數(shù)據(jù),需要對應用表和應用補丁表進行查詢。
步驟s402,根據(jù)所述查詢請求,訪問所述應用表,獲得需要查詢的查詢數(shù)據(jù)。
步驟s403,根據(jù)所述應用表,訪問對應所述應用表的應用補丁表。
本步驟訪問應用補丁表,這是由于,根據(jù)基本數(shù)據(jù)表和補丁數(shù)據(jù)表的機制,對于一個app應用的基本數(shù)據(jù),需要結合兩個表才能獲得完整信息。否則,查詢結果僅僅是當前app應用的結果,但一旦補丁數(shù)據(jù)表的更新被執(zhí)行,則查詢結果就會落伍。
步驟s404,合并所述應用表和應用補丁表的查詢數(shù)據(jù)獲得查詢結果。
步驟s405,通過所述調試平臺輸出所述查詢結果。
當需要查詢的是統(tǒng)一配置屬性時,由于該信息僅僅記錄在應用補丁表中,因此,可以直接項所述應用補丁表查詢相關屬性字段,并返回查詢結果。
所述查詢綁定資源的操作與上述查詢app應用基本數(shù)據(jù)的操作類似,在此簡要說明。
請參考圖5,其示出了根據(jù)本申請的實施例提供的查詢綁定資源的操作的流程圖。
步驟s501,接收來自所述調試平臺的查詢請求。
步驟s502,根據(jù)所述訪問請求,訪問所述資源基本表和所述資源補丁表。
步驟s503,獲得所述資源基本表提供的已綁定資源數(shù)據(jù)和所述資源補丁表記錄的對綁定資源的待更新需求。
步驟s504,合并所述已綁定資源數(shù)據(jù)和對綁定資源的待更新需求的數(shù)據(jù),獲得所述app應用的綁定資源記錄作為查詢結果。
步驟s505,將所述查詢結果通過所述應用平臺輸出。
所述查詢未關聯(lián)api的操作,可以使開發(fā)方據(jù)此確定app應用還可以使用哪些api接口,避免遺漏可以使用的api接口。以下結合圖6簡要說明。
請參考圖6,其示出了根據(jù)本申請的實施例提供的查詢未關聯(lián)api的操作的流程圖。
步驟s601,通過所述調試平臺接收對api配置提出的查詢請求;
步驟s602,通過所述運行平臺訪問所述api配置管理系統(tǒng),并從所述api 配置管理系統(tǒng)獲取所有api接口。
步驟s603,通過所述調試平臺接收向所述api基本表提出的查詢請求,查詢獲得所述app應用的關聯(lián)api。該步驟在順序上和上述步驟s601可以并列,或者在步驟s601之前或者之后,都可以。
步驟s604,通過調試平臺接收上述步驟獲得的所述所有api接口與所述api基本表中的關聯(lián)api的查詢結果。
步驟s605,從所述所有api接口中剔除所述關聯(lián)api,獲得未關聯(lián)api信息。
步驟s606,輸出未關聯(lián)api信息。
所述查詢關聯(lián)api的操作,可以使開發(fā)方據(jù)此確定app應用已經關聯(lián)的api接口。以下結合圖7簡要說明。
請參考圖7,其示出了根據(jù)本申請的實施例提供的查詢關聯(lián)api的操作的流程圖。
步驟s701,通過所述調試平臺接收向所述api基本表提出的查詢請求。
步驟s702,向所述api基本表發(fā)出查詢命令,查詢獲得所述api基本表中記錄的關聯(lián)api數(shù)據(jù),以及,向所述關聯(lián)api補丁表發(fā)出查詢命令,查詢獲得所述關聯(lián)api補丁表中記錄的關聯(lián)api更新數(shù)據(jù);
步驟s703,合并所述api基本表的關聯(lián)api數(shù)據(jù)和所述關聯(lián)api補丁表中的關聯(lián)api更新數(shù)據(jù),獲得完整關聯(lián)api數(shù)據(jù);
步驟s704,輸出所述完整關聯(lián)api數(shù)據(jù)。
在上述的實施例中,提供了一種app應用調試方法,與上述app應用調試方法相對應的,本申請還提供了一種app應用調試裝置。由于裝置的實施例基本相似于方法的實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。所述app應用調試裝置實施例如下:
請參考圖8,其示出了根據(jù)本申請的實施例提供的app應用調試裝置的示意圖。
所述app應用調試裝置,包括:數(shù)據(jù)表設置單元801、屬性字段記錄單元 803、測試單元805以及更新單元807;
所述數(shù)據(jù)表設置單元801,用于根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);
所述屬性字段記錄單元803,用于接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;
所述測試單元805,用于在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試;
所述更新單元807,用于接收所述測試單元的測試結果,若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
可選的,所述數(shù)據(jù)表設置單元801,具體用于根據(jù)app應用的特性設置的多個表,各個表分別提供確定類型的屬性字段。
可選的,所述數(shù)據(jù)表設置單元801,設置的基本數(shù)據(jù)表包括應用表;對應的,所述補丁數(shù)據(jù)表包括應用補丁表;所述應用補丁表除了包括所述app應用標識號,還包括如下屬性字段的至少一項:用戶名、審批意見、應用狀態(tài)、數(shù)據(jù)同步、審核人、申請人、下發(fā)地址、字符編碼、報文格式、超時時間、是否統(tǒng)一配置、沙箱賬號、主鍵、創(chuàng)建時間、修改時間、是否刪除字段、擴展鍵-值屬性、應用標簽。
可選的,所述數(shù)據(jù)表設置單元801,設置的基本數(shù)據(jù)表包括資源基本表;對應的,所述補丁數(shù)據(jù)表包括資源補丁表,所述資源補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:增加的資源、刪減的資源、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,所述數(shù)據(jù)表設置單元801,設置的基本數(shù)據(jù)表包括關聯(lián)api基本表;對應的,所述補丁數(shù)據(jù)表包括關聯(lián)api補丁表,所述關聯(lián)api補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:關聯(lián)類型、api名、參數(shù)名、 參數(shù)值、操作、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,所述數(shù)據(jù)表設置單元801,設置的關聯(lián)api補丁數(shù)據(jù)表采用垂直表形式。
可選的,所述數(shù)據(jù)表設置單元801,設置的基本數(shù)據(jù)表包括應用表、資源基本表、api基本表,相應的,所述補丁數(shù)據(jù)表包括對應所述應用表的應用補丁表,對應所述資源基本表的資源補丁表,對應所述api基本表的關聯(lián)api補丁表;
所述應用補丁表除了包括所述app應用標識號,還包括如下屬性字段的至少一項:用戶名、審批意見、應用狀態(tài)、數(shù)據(jù)同步、審核人、申請人、下發(fā)地址、字符編碼、報文格式、超時時間、是否統(tǒng)一配置、沙箱賬號、主鍵、創(chuàng)建時間、修改時間、是否刪除字段、擴展鍵-值屬性、應用標簽;
所述資源補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:增加的資源、刪減的資源、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段;
所述關聯(lián)api補丁表除了包括app應用標識號,還包括如下屬性字段的至少一項:關聯(lián)類型、api名、參數(shù)名、參數(shù)值、操作、主鍵名、創(chuàng)建時間、修改時間、是否刪除字段。
可選的,若所述app應用尚未創(chuàng)建,則還包括app應用創(chuàng)建單元,所述app應用創(chuàng)建單元,包括:應用創(chuàng)建子單元、綁定資源子單元、關聯(lián)api子單元、聯(lián)調測試子單元以及發(fā)布子單元;
所述應用創(chuàng)建子單元,用于所述在調試環(huán)境創(chuàng)建應用包括在調試平臺上生成所述app應用相關的所述基本數(shù)據(jù)表和應用補丁表,向所述基本數(shù)據(jù)表和所述補丁數(shù)據(jù)表提供app應用的初始數(shù)據(jù);所述基本數(shù)據(jù)表所包括的與實際應用環(huán)境相關屬性的數(shù)據(jù)設定為空值或者預定的初始值,其它數(shù)據(jù)根據(jù)所述應用補丁表的屬性字段的屬性值確定,所述應用補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;
所述綁定資源子單元,用于在調試平臺上創(chuàng)建所述app應用相關的所述基本資源表和資源補丁表;所述資源基本表的數(shù)據(jù)來自所述資源補丁表的記錄,所述資源補丁表的各個屬性字段的屬性值則通過調試平臺接收外部輸入獲得;
所述關聯(lián)api子單元,用于在調試平臺上創(chuàng)建所述app應用相關的所述api基本表和關聯(lián)api補丁表;所述api基本表的數(shù)據(jù)來自所述關聯(lián)api補丁表的記錄,所述關聯(lián)api補丁表的各個屬性字段的屬性值則通過調試平臺接收外部 輸入獲得;
所述聯(lián)調測試子單元,用于以上述步驟中設置的基本數(shù)據(jù)表、資源基本表和api基本表以及各自對應的補丁表為依據(jù),對所述app應用進行是否可以在運行平臺運行的測試;
所述發(fā)布子單元,用于在聯(lián)調測試通過后申請在運行平臺上正式上線所述app應用。
可選的,所述app應用更新裝置,還包括:應用刪除單元,所述應用刪除單元,包括:記錄刪除子單元以及刪除子單元;
所述記錄刪除子單元,用于接收來自所述調試平臺的刪除請求;根據(jù)所述刪除請求,訪問對應的app應用的基本數(shù)據(jù)表,并根據(jù)所述基本數(shù)據(jù)表的屬性值記錄,獲得刪除所述app應用需要進行的處理,并將這些處理要求根據(jù)不同的類型分別以屬性值的方式,記錄在所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的相應的屬性字段中;
所述刪除子單元,用于根據(jù)所述補丁數(shù)據(jù)表、資源補丁表以及關聯(lián)api補丁表的屬性值記錄,對所述app應用進行刪除,包括釋放相關資源和api接口;執(zhí)行完畢后,向所述調試平臺返回刪除操作的執(zhí)行結果。
可選的,所述app應用更新裝置,還包括:基本參數(shù)查詢單元,所述基本參數(shù)查詢單元,包括:請求接收子單元、應用表訪問子單元、補丁表訪問單元、結果合并子單元以及結果輸出子單元;
所述請求接收子單元,用于接收來自所述調試平臺的針對所述app應用基本數(shù)據(jù)的查詢請求;
所述表訪問子單元,用于根據(jù)所述查詢請求,訪問所述應用表,獲得需要查詢的查詢數(shù)據(jù);
所述補丁表訪問單元,用于根據(jù)所述應用表,訪問對應所述應用表的應用補丁表;
所述結果合并子單元,用于合并所述應用表和應用補丁表的查詢數(shù)據(jù)獲得查詢結果;
所述結果輸出子單元,用于通過所述調試平臺輸出所述查詢結果。
可選的,所述app應用更新裝置,還包括:資源查詢單元,所述資源查詢單元,包括:請求接收子單元、數(shù)據(jù)表訪問子單元、需求獲得子單元、查詢結果 合并子單元以及查詢結果輸出子單元;
所述請求接收子單元,用于接收來自所述調試平臺的查詢請求;
所述數(shù)據(jù)表訪問子單元,用于根據(jù)所述訪問請求,訪問所述資源基本表和所述資源補丁表;
所述需求獲得子單元,用于獲得所述資源基本表提供的已綁定資源數(shù)據(jù)和所述資源補丁表記錄的對綁定資源的待更新需求;
所述查詢結果合并子單元,用于合并所述已綁定資源數(shù)據(jù)和對綁定資源的待更新需求的數(shù)據(jù),獲得所述app應用的綁定資源記錄作為查詢結果;
所述查詢結果輸出子單元,用于將所述查詢結果通過所述應用平臺輸出。
可選的,所述app應用更新裝置,還包括:未關聯(lián)api查詢單元,所述未關聯(lián)api查詢單元,包括:查詢請求接收子單元、api接口獲取子單元、關聯(lián)api獲取子單元、查詢結果接收子單元、剔除子單元以及未關聯(lián)api輸出子單元;
所述查詢請求接收子單元,用于通過所述調試平臺接收對api配置提出的查詢請求;
所述api接口獲取子單元,用于通過所述運行平臺訪問所述api配置管理系統(tǒng),并從所述api配置管理系統(tǒng)獲取所有api接口;以及
所述關聯(lián)api獲取子單元,用于通過所述調試平臺接收向所述api基本表提出的查詢請求,查詢獲得所述app應用的關聯(lián)api;
所述查詢結果接收子單元,用于通過調試平臺接收上述步驟獲得的所述所有api接口與所述api基本表中的關聯(lián)api的查詢結果;
所述剔除子單元,用于從所述所有api接口中剔除所述關聯(lián)api,獲得未關聯(lián)api信息;
所述未關聯(lián)api輸出子單元,用于輸出未關聯(lián)api信息。
可選的,所述app應用更新裝置,還包括:關聯(lián)api查詢單元,所述關聯(lián)api查詢單元,包括:請求提出子單元、命令發(fā)出子單元、api數(shù)據(jù)合并子單元以及完整關聯(lián)api數(shù)據(jù)輸出子單元;
所述請求提出子單元,用于通過所述調試平臺接收向所述api基本表提出的查詢請求;
所述命令發(fā)出子單元,用于向所述api基本表發(fā)出查詢命令,查詢獲得所 述api基本表中記錄的關聯(lián)api數(shù)據(jù),以及,向所述關聯(lián)api補丁表發(fā)出查詢命令,查詢獲得所述關聯(lián)api補丁表中記錄的關聯(lián)api更新數(shù)據(jù);
所述api數(shù)據(jù)合并子單元,用于合并所述api基本表的關聯(lián)api數(shù)據(jù)和所述關聯(lián)api補丁表中的關聯(lián)api更新數(shù)據(jù)獲得完整關聯(lián)api數(shù)據(jù);
所述完整關聯(lián)api數(shù)據(jù)輸出子單元,用于輸出所述完整關聯(lián)api數(shù)據(jù)。
在上述的實施例中,提供了一種app應用調試方法以及一種app應用調試裝置,此外,本申請還提供了一種電子設備;所述電子設備實施例如下:
請參考圖9,其示出了根據(jù)本申請的實施例提供的電子設備的示意圖。
所述電子設備,包括:顯示器901;處理器903;存儲器905;
所述存儲器905,用于存儲app應用調試程序,所述程序在被所述處理器讀取執(zhí)行時,執(zhí)行如下操作:根據(jù)app應用的運行環(huán)境,對應所述app應用運行的各類需求,設置對應每一類需求的基本數(shù)據(jù)表;以及,對應各個基本數(shù)據(jù)表,設置補丁數(shù)據(jù)表;所述基本數(shù)據(jù)表記錄所述app應用在運行過程中需要使用、關聯(lián)的數(shù)據(jù),所述補丁數(shù)據(jù)表,記錄app應用更新過程中需要改變的數(shù)據(jù);所述數(shù)據(jù)基本表和所述補丁數(shù)據(jù)表均包含統(tǒng)一的app應用標識號,并通過所述統(tǒng)一的app應用標識號相互關聯(lián);接收對所述app應用的需求定義,并根據(jù)所述需求定義生成待更新需求,將所述待更新需求以屬性值的方式記錄在所述補丁數(shù)據(jù)表的相關屬性字段中;在預定的時機,以所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對app應用進行更新的聯(lián)調測試;若聯(lián)調測試通過,則以各個所述補丁數(shù)據(jù)表的屬性值記錄為依據(jù),對對應各個所述補丁數(shù)據(jù)表的所述基本數(shù)據(jù)表進行更新。
在一個典型的配置中,計算設備包括一個或多個處理器(cpu)、輸入/輸出接口、網絡接口和內存。
內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(ram)和/或非易失性內存等形式,如只讀存儲器(rom)或閃存(flashram)。內存是計算機可讀介質的示例。
1、計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結構、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質的例子包括,但不限于相變內存(pram)、靜態(tài)隨機存取存儲器(sram)、動態(tài)隨機存取存儲器(dram)、其他類 型的隨機存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內存技術、只讀光盤只讀存儲器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質,可用于存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質不包括非暫存電腦可讀媒體(transitorymedia),如調制的數(shù)據(jù)信號和載波。
2、本領域技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)或計算機程序產品。因此,本申請可采用完全硬件實施例、完全軟件實施例或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產品的形式。
本申請雖然以較佳實施例公開如上,但其并不是用來限定本申請,任何本領域技術人員在不脫離本申請的精神和范圍內,都可以做出可能的變動和修改,因此本申請的保護范圍應當以本申請權利要求所界定的范圍為準。