两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

應(yīng)用程序的打包方法及裝置與流程

文檔序號:12123154閱讀:565來源:國知局
本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,具體而言,涉及一種應(yīng)用程序的打包方法及裝置。
背景技術(shù)
::相關(guān)技術(shù)中的移動終端應(yīng)用程序(例如:智能手機(jī)上安裝的游戲應(yīng)用)打包是指將應(yīng)用程序的源代碼、資源、數(shù)據(jù)等內(nèi)容,借助打包工具,整合成一個(gè)可以在移動終端上安裝的特定應(yīng)用程序包,例如:安卓系統(tǒng)下的APK包以及iOS系統(tǒng)下的IPA包,其中,游戲中的資源通??梢园ǖ幌抻冢河脩裘?UI)、模型、場景、音效、特效;UI可以進(jìn)一步包括:用戶操作游戲的按鈕、彈框、滑動條等交互界面;模型主要是指游戲中的游戲角色,通常支持一定數(shù)量的動作;場景是指游戲中所使用的地圖;音效可以進(jìn)一步包括:按鈕點(diǎn)擊的聲音、背景音、人物語音、人物動作或碰撞相關(guān)的聲音等;特效是指一些動態(tài)的效果,例如:技能輻射的效果。數(shù)據(jù)是指游戲中使用的基礎(chǔ)信息,其相當(dāng)于軟件開發(fā)中應(yīng)用的配置文件,不過游戲需要配置的內(nèi)容比較多,因此,游戲中的數(shù)據(jù)通??梢赃M(jìn)一步包括:策劃在表中填寫的特定參數(shù),例如:技能的傷害、范圍、持續(xù)時(shí)間等;由編輯器導(dǎo)出的特定數(shù)據(jù),例如:副本編輯器導(dǎo)出的副本流程數(shù)據(jù)、劇情編輯器導(dǎo)出的劇情動畫等。這些數(shù)據(jù)無論起初采用何種格式,最終都會轉(zhuǎn)換成游戲中可以直接讀取使用的信息。打包的過程通常需要經(jīng)過以下步驟:第一步、更新代碼、資源和數(shù)據(jù),在項(xiàng)目開發(fā)過程中,這些內(nèi)容都是通過svn或者git等版本管理工具進(jìn)行維護(hù)的,因此,在執(zhí)行打包操作之前需要先進(jìn)行更新。第二步、資源處理,主要是進(jìn)行資源壓縮、廢棄資源剔除以及一些資源生成的操作。第三步、編譯引擎,其是將引擎文件編譯成通用的庫文件,以便于適應(yīng)多種不同類型的語言接口調(diào)用。第四步、借助引擎工具將代碼、處理后的資源等文件打成最終的安裝包。以游戲類應(yīng)用為例,在通常情況下,游戲引擎會提供相關(guān)工具將資源、代碼和引擎進(jìn)行相關(guān)處理(通常包括:首先生成指定平臺的文件目錄和基礎(chǔ)文件,其次拷貝游戲文件,然后對游戲文件進(jìn)行加密、壓縮等操作,以便最終生成相應(yīng)平臺的安裝包),進(jìn)而打包成一個(gè)完整的手機(jī)游戲安裝包。此外,應(yīng)用程序在開發(fā)期間所進(jìn)行的改動,均需要通過打包生成安裝包,并成功安裝到移動終端上后才能夠有所體現(xiàn)。因此,對應(yīng)用程序執(zhí)行打包操作是應(yīng)用程序發(fā)布的必經(jīng)過程。然而,現(xiàn)有的各種應(yīng)用引擎的打包方式大同小異,通常需要執(zhí)行上述應(yīng)用程序打包處理的常規(guī)步驟。通常應(yīng)用程序開發(fā)需要使用版本控制工具(例如:svn)來控制版本,打包時(shí)會拉取版本倉庫上的資源,然后在一臺專門的設(shè)備上進(jìn)行應(yīng)用程序打包。圖1是根據(jù)相關(guān)技術(shù)的應(yīng)用程序打包流程的示意圖。如圖1所示,該打包流程可以包括以下處理步驟:第一步、刪除svn目錄下的文件,在通常情況下,需要刪除的是在打包機(jī)上生成的一些臨時(shí)文件,上次打包的遺留文件。第二步、更新文件,即,將提交到svn服務(wù)器上的更新內(nèi)容同步到打包機(jī)上,其可以包括但不限于:腳本、引擎、配置、資源、表格和工具。第三步、導(dǎo)表,其是指將最新的策劃表(通常為EXCEL表,其是指在游戲開發(fā)過程中,會存在大量的由策劃填寫和調(diào)試的基礎(chǔ)數(shù)據(jù),這些數(shù)據(jù)通??梢灾苯訉懭隕XCEL表格中,例如:游戲中每類人物的基礎(chǔ)屬性、技能屬性、裝備屬性、一些玩法的參數(shù);這些數(shù)據(jù)并不能直接在游戲中使用,而是需要經(jīng)過轉(zhuǎn)換,最終成為游戲的配置文件,其轉(zhuǎn)換的過程被稱為導(dǎo)表)導(dǎo)出成應(yīng)用程序代碼中使用的數(shù)據(jù)格式,可以是與客戶端腳本語言類型相同的字典文件或者json文件。第四步、資源相關(guān)處理,其可以包括但不限于:資源檢查、更新應(yīng)用程序中模型資源、生成地圖資源。第五步、資源生成,其是指根據(jù)處理后的基本資源生成對應(yīng)平臺需要的資源,可以包括但不限于:美術(shù)資源和腳本資源。具體地,美術(shù)資源通常具有多套不同清晰度的資源文件,進(jìn)而可以分別生成高清資源或者標(biāo)清資源供不同平臺使用。腳本資源的生成是指對腳本進(jìn)行編譯,例如:通過對js文件進(jìn)行編譯生成jsc文件、通過對py文件進(jìn)行編譯生成pyc文件。第六步、打包編譯,其可以包括:(1)編譯引擎,將引擎代碼翻譯成指定平臺能夠理解的文件;(2)借助引擎工具將代碼、處理后的資源等文件打包成最終的安裝包。由此可見,相關(guān)技術(shù)中所提供的應(yīng)用程序打包流程存在以下缺陷:(1)每次打包過程均需要經(jīng)歷上述多個(gè)步驟,其耗費(fèi)時(shí)間較長,不利于快速驗(yàn)證開發(fā)期間所實(shí)施的改動。(2)在打包機(jī)上生成最終的安裝包后,需要將安裝包下載到移動終端本地,再進(jìn)一步安裝到特定移動終端上,其操作過程較為繁瑣。(3)每次打包過程通常需要獨(dú)占打包機(jī),即,不同應(yīng)用程序的安裝包僅能夠按照時(shí)間順序進(jìn)行串行打包操作而無法執(zhí)行并行打包操作。針對上述的問題,目前尚未提出有效的解決方案。技術(shù)實(shí)現(xiàn)要素:本發(fā)明實(shí)施例提供了一種應(yīng)用程序的打包方法及裝置,以至少解決相關(guān)技術(shù)中所提供的在應(yīng)用程序更新過程中需要經(jīng)歷的打包流程耗時(shí)較長,操作較為繁瑣的技術(shù)問題。根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種應(yīng)用程序的打包方法,包括:向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,其中,第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻;對待更新文件進(jìn)行打包處理;將處理后的待更新文件發(fā)送至用戶終端,其中,用戶終端安裝有待發(fā)布應(yīng)用程序??蛇x地,在向版本管理服務(wù)器獲取待更新文件之前,還包括:向打包服務(wù)器發(fā)送查詢請求消息,其中,查詢請求消息用于向打包服務(wù)器查詢第一時(shí)間點(diǎn);接收打包服務(wù)器反饋的查詢響應(yīng)消息,其中,查詢響應(yīng)消息中攜帶的信息包括:第一時(shí)間點(diǎn)??蛇x地,第一時(shí)間點(diǎn)通過在打包服務(wù)器的打包腳本中添加第一預(yù)設(shè)指令寫入至打包服務(wù)器上的指定存儲區(qū)域??蛇x地,向版本管理服務(wù)器獲取待更新文件包括:采用第二預(yù)設(shè)指令將第一時(shí)間點(diǎn)轉(zhuǎn)換為第一版本號以及將第二時(shí)間點(diǎn)轉(zhuǎn)換為第二版本號;采用第三預(yù)設(shè)指令向版本管理服務(wù)器獲取位于第一版本號與第二版本號之間的待更新文件在版本管理服務(wù)器上的文件存儲路徑;采用第四預(yù)設(shè)指令將從文件存儲路徑獲取到的待更新文件存儲至本地指定存儲區(qū)域??蛇x地,對待更新文件進(jìn)行打包處理包括:對待更新文件進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的待更新文件,其中,轉(zhuǎn)換處理用于將待更新文件中的原始數(shù)據(jù)轉(zhuǎn)換為代碼數(shù)據(jù);對轉(zhuǎn)換后的待更新文件進(jìn)行編譯處理,得到編譯后的待更新文件;對編譯后的待更新文件進(jìn)行加密處理,得到處理后的待更新文件??蛇x地,將處理后的待更新文件發(fā)送至用戶終端包括:判斷用戶終端上是否存在用于存儲處理后的待更新文件的指定目錄;如果存在指定目錄,則將處理后的待更新文件發(fā)送至指定目錄;如果不存在指定目錄,則在創(chuàng)建指定目錄后,再將處理后的待更新文件發(fā)送至指定目錄。可選地,在將處理后的待更新文件發(fā)送至用戶終端之前,還包括:當(dāng)用戶終端運(yùn)行第一類型系統(tǒng)時(shí),采用第五預(yù)設(shè)指令檢測與用戶終端是否成功連接,其中,第一類型操作系統(tǒng)為開源類操作系統(tǒng)??蛇x地,在將處理后的待更新文件發(fā)送至用戶終端之前,還包括:當(dāng)用戶終端運(yùn)行第二類型系統(tǒng)時(shí),采用預(yù)設(shè)通訊連接工具將本地預(yù)設(shè)互聯(lián)網(wǎng)協(xié)議IP地址轉(zhuǎn)換為用戶終端的IP地址,并檢測與用戶終端是否成功連接,其中,第二類型操作系統(tǒng)為非開源類操作系統(tǒng)。根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種應(yīng)用程序的打包裝置,包括:獲取模塊,用于向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,其中,第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻;處理模塊,用于對待更新文件進(jìn)行打包處理;發(fā)送模塊,用于將處理后的待更新文件發(fā)送至用戶終端,其中,用戶終端安裝有待發(fā)布應(yīng)用程序??蛇x地,上述裝置還包括:請求模塊,用于向打包服務(wù)器發(fā)送查詢請求消息,其中,查詢請求消息用于向打包服務(wù)器查詢第一時(shí)間點(diǎn);響應(yīng)模塊,用于接收打包服務(wù)器反饋的查詢響應(yīng)消息,其中,查詢響應(yīng)消息中攜帶的信息包括:第一時(shí)間點(diǎn)??蛇x地,第一時(shí)間點(diǎn)通過在打包服務(wù)器的打包腳本中添加第一預(yù)設(shè)指令寫入至打包服務(wù)器上的指定存儲區(qū)域。可選地,獲取模塊包括:轉(zhuǎn)換單元,用于采用第二預(yù)設(shè)指令將第一時(shí)間點(diǎn)轉(zhuǎn)換為第一版本號以及將第二時(shí)間點(diǎn)轉(zhuǎn)換為第二版本號;獲取單元,用于采用第三預(yù)設(shè)指令向版本管理服務(wù)器獲取位于第一版本號與第二版本號之間的待更新文件在版本管理服務(wù)器上的文件存儲路徑;存儲單元,用于采用第四預(yù)設(shè)指令將從文件存儲路徑獲取到的待更新文件存儲至本地指定存儲區(qū)域。可選地,處理模塊包括:第一處理單元,用于對待更新文件進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的待更新文件,其中,轉(zhuǎn)換處理用于將待更新文件中的原始數(shù)據(jù)轉(zhuǎn)換為代碼數(shù)據(jù);第二處理單元,用于對轉(zhuǎn)換后的待更新文件進(jìn)行編譯處理,得到編譯后的待更新文件;第三處理單元,用于對編譯后的待更新文件進(jìn)行加密處理,得到處理后的待更新文件??蛇x地,發(fā)送模塊包括:判斷單元,用于判斷用戶終端上是否存在用于存儲處理后的待更新文件的指定目錄;發(fā)送單元,用于在判斷單元輸出為是時(shí),將處理后的待更新文件發(fā)送至指定目錄;第四處理單元,用于在判斷單元輸出為否時(shí),創(chuàng)建指定目錄,并將處理后的待更新文件發(fā)送至指定目錄。可選地,上述裝置還包括:第一檢測模塊,用于當(dāng)用戶終端運(yùn)行第一類型系統(tǒng)時(shí),采用第五預(yù)設(shè)指令檢測與用戶終端是否成功連接,其中,第一類型操作系統(tǒng)為開源類操作系統(tǒng)??蛇x地,上述裝置還包括:第二檢測模塊,用于當(dāng)用戶終端運(yùn)行第二類型系統(tǒng)時(shí),采用預(yù)設(shè)通訊連接工具將本地預(yù)設(shè)互聯(lián)網(wǎng)協(xié)議IP地址轉(zhuǎn)換為用戶終端的IP地址,并檢測與用戶終端是否成功連接,其中,第二類型操作系統(tǒng)為非開源類操作系統(tǒng)。在本發(fā)明實(shí)施例中,采用向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,該第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,該第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻,并對待更新文件進(jìn)行打包處理的方式,通過將處理后的待更新文件發(fā)送至用戶終端,達(dá)到了有針對性地對不同時(shí)間點(diǎn)之間發(fā)生更新的內(nèi)容進(jìn)行打包并發(fā)送至用戶終端以完成應(yīng)用程序更新的目的,從而實(shí)現(xiàn)了降低打包過程所消耗的時(shí)間、提高打包過程的處理效率的技術(shù)效果,進(jìn)而解決了相關(guān)技術(shù)中所提供的在應(yīng)用程序更新過程中需要經(jīng)歷的打包流程耗時(shí)較長,操作較為繁瑣的技術(shù)問題。附圖說明此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:圖1是根據(jù)相關(guān)技術(shù)的應(yīng)用程序打包流程的示意圖;圖2是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序的打包方法的流程圖;圖3是根據(jù)本發(fā)明優(yōu)選實(shí)施例的應(yīng)用程序打包過程的示意圖;圖4是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序的打包裝置的結(jié)構(gòu)框圖;圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的應(yīng)用程序的打包裝置的結(jié)構(gòu)框圖。具體實(shí)施方式為了使本
技術(shù)領(lǐng)域
:的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。本發(fā)明所涉及到的名詞解釋如下:(1)patch是指軟件更新時(shí)下載的補(bǔ)丁,其并不需要下載完整的軟件,而是通過一個(gè)較小的補(bǔ)丁,即可獲得軟件的更新功能。(2)svn為一個(gè)開放的版本控制系統(tǒng),類似于git。(3)代碼分支是指在軟件或者游戲開發(fā)過程中,對不同進(jìn)度中的代碼進(jìn)行管理的方法。例如:主線分支,測試分支,開發(fā)分支,其通常用于發(fā)布、測試和日常開發(fā)分別提交代碼的控制和管理,可以通過版本控制系統(tǒng)來實(shí)現(xiàn)。(4)Python/python,其為一種編程語言。(5)Qt/qt是指一種跨平臺圖形用戶界面應(yīng)用程序開發(fā)框架,其可以提供強(qiáng)大的界面開發(fā)庫。(6)PyQt是指Python編程語言和Qt界面開發(fā)庫相互融合,提供Python語言開發(fā)用戶界面的各種接口。(7)JSON,其為一種輕量級的數(shù)據(jù)交換格式,獨(dú)立于語言。(8)dict,又稱字典,其為一種數(shù)據(jù)類型,數(shù)據(jù)內(nèi)容是無序的,由鍵值(key-value)對組成,可以通過key來獲取到對應(yīng)的value。根據(jù)本發(fā)明實(shí)施例,提供了一種應(yīng)用程序的打包方法的實(shí)施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。圖2是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序的打包方法的流程圖,如圖2所示,該方法包括如下步驟:步驟S10,向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,其中,第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻;步驟S12,對待更新文件進(jìn)行打包處理;步驟S14,將處理后的待更新文件發(fā)送至用戶終端,其中,用戶終端安裝有待發(fā)布應(yīng)用程序。通過上述步驟,可以采用向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,該第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,該第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻,并對待更新文件進(jìn)行打包處理的方式,通過將處理后的待更新文件發(fā)送至用戶終端,達(dá)到了有針對性地對不同時(shí)間點(diǎn)之間發(fā)生更新的內(nèi)容進(jìn)行打包并發(fā)送至用戶終端以完成應(yīng)用程序更新的目的,從而實(shí)現(xiàn)了降低打包過程所消耗的時(shí)間、提高打包過程的處理效率的技術(shù)效果,進(jìn)而解決了相關(guān)技術(shù)中所提供的在應(yīng)用程序更新過程中需要經(jīng)歷的打包流程耗時(shí)較長,操作較為繁瑣的技術(shù)問題。需要說明的是,下文中將以游戲類較為復(fù)雜的應(yīng)用為例,對本發(fā)明實(shí)施例提供的應(yīng)用程序的打包方法做詳細(xì)說明,但其并不構(gòu)成對本發(fā)明的不當(dāng)限制,其還可以適用于其他類型的應(yīng)用,例如:即時(shí)通訊類應(yīng)用、支付類應(yīng)用、網(wǎng)上購物類應(yīng)用等??蛇x地,在步驟S10,向版本管理服務(wù)器獲取待更新文件之前,還可以包括以下執(zhí)行步驟:步驟S15,向打包服務(wù)器發(fā)送查詢請求消息,其中,查詢請求消息用于向打包服務(wù)器查詢第一時(shí)間點(diǎn);步驟S16,接收打包服務(wù)器反饋的查詢響應(yīng)消息,其中,查詢響應(yīng)消息中攜帶的信息包括:第一時(shí)間點(diǎn)。在優(yōu)選實(shí)施過程中,第一時(shí)間點(diǎn)通過在打包服務(wù)器的打包腳本中添加第一預(yù)設(shè)指令寫入至打包服務(wù)器上的指定存儲區(qū)域。通過獲取上次打包時(shí)間,以便于查找當(dāng)前最新版本內(nèi)容與前一個(gè)版本打包內(nèi)容之間的差異內(nèi)容?;诿看未虬枰诖虬?wù)器上執(zhí)行,為此,可以在打包腳本中添加特定指令,以便將每次打包的種類和時(shí)間寫入到指定文件中,進(jìn)而有利于后續(xù)查詢相關(guān)信息。需要說明的是,不同分支的打包時(shí)間需要區(qū)別記錄。借助版本管理工具開發(fā)項(xiàng)目,有時(shí)會拉取很多分支,例如:在開發(fā)特定軟件項(xiàng)目的過程中,會在svn上創(chuàng)建一個(gè)倉庫。在開發(fā)到特定階段時(shí),需要出具一個(gè)評審版本,然而這個(gè)評審版本與最終待發(fā)布的目標(biāo)版本是不同的,只用來評審這一次,并在完成評審后即丟棄該評審版本。而目標(biāo)版本仍然需要繼續(xù)開發(fā),此時(shí)便可拉取一個(gè)分支,在這個(gè)分支上開發(fā)評審版本,而主干的目標(biāo)版本仍舊繼續(xù)開發(fā)。由此可見,不同的分支便相當(dāng)于不同的開發(fā)項(xiàng)目,也是分開打包的,故而需要區(qū)分記錄,分開對比??蛇x地,在步驟S10中,向版本管理服務(wù)器獲取待更新文件可以包括以下執(zhí)行步驟:步驟S101,采用第二預(yù)設(shè)指令將第一時(shí)間點(diǎn)轉(zhuǎn)換為第一版本號以及將第二時(shí)間點(diǎn)轉(zhuǎn)換為第二版本號;步驟S102,采用第三預(yù)設(shè)指令向版本管理服務(wù)器獲取位于第一版本號與第二版本號之間的待更新文件在版本管理服務(wù)器上的文件存儲路徑;步驟S103,采用第四預(yù)設(shè)指令將從文件存儲路徑獲取到的待更新文件存儲至本地指定存儲區(qū)域。在優(yōu)選實(shí)施例中,上述待更新文件可以根據(jù)版本管理服務(wù)器(例如:svn服務(wù)器)的日志記錄來獲得。以Python為例,Python提供了pysvn模塊,可以執(zhí)行如下多種操作:需要說明的是,svn可以通過版本號來區(qū)分每次提交的更新內(nèi)容,每提交一次,版本號便會隨之加1,svn提供接口拉取指定版本號內(nèi)容,查找不同版本號之間的區(qū)別。下文中將時(shí)間轉(zhuǎn)換成svn的版本號,便是為了調(diào)用svn內(nèi)置的版本管理接口,這一套svn已經(jīng)較為成熟,從而消除自行開發(fā)所可能引起的麻煩。另外,其他的版本管理工具,例如:git,也具有一套相似的管理接口供開發(fā)者調(diào)用。(1)pysvn.Client.diff_summarize輸入:svn服務(wù)器的統(tǒng)一資源定位符(URL)地址,svn版本1,svn版本2輸出:從svn版本1至版本2之間變化的所有文件路徑通過上述指令可以獲取不同版本之間發(fā)生變化的全部文件。(2)pysvn.Revision(如上所述,通過將時(shí)間轉(zhuǎn)換為svn的版本號,以便借助svn的版本管理功能查找差異文件)輸入:pysvn.opt_revision_kind.date,時(shí)間輸出:指定時(shí)間對應(yīng)的svn版本號通過上述指令可以將打包時(shí)間轉(zhuǎn)換成svn版本號。需要說明的是,輸入的時(shí)間是時(shí)間戳格式,即相對于1970.1.100:00:00,以秒計(jì)算的偏移量。(3)pysvn.Client.export輸入:待下載的文件的svnurl路徑,從svn服務(wù)器獲取到的文件路徑(此處僅為該接口的輸入?yún)?shù),即,將svn上指定的文件拉取到本地后的存放位置,其可以直接存放在打包工具的一個(gè)臨時(shí)文件下即可,而上述文件路徑即指該臨時(shí)文件路徑)輸出:svn版本號(即svn的接口返回值)通過上述指令可以將svnurl路徑下的文件下載到本地指定文件夾。例如:svn上存在文件,其對應(yīng)的svnurl為https://netease.com/svn/Project/code/test.py,可以通過svn將其拉取到本地,同時(shí)還能夠獲知該文件在本地相對于項(xiàng)目的Project目錄的位置,即Project/code/test.py。上述三個(gè)接口均為svn庫的接口,git也存在類似的接口,借助這些接口可以方便地進(jìn)行文件差異對比。通過將時(shí)間轉(zhuǎn)換為svn的版本號,便是為了能夠使用svn接口拉取變動的文件;否則,便需要人工對比每個(gè)文件的最后修改時(shí)間,才有可能查找出發(fā)生更新的文件。與之相比,svn工具可以緩存每次提交的記錄,由此可以實(shí)現(xiàn)快速查找??蛇x地,在步驟S12中,對待更新文件進(jìn)行打包處理可以包括以下處理步驟:步驟S121,對待更新文件進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的待更新文件,其中,轉(zhuǎn)換處理用于將待更新文件中的原始數(shù)據(jù)轉(zhuǎn)換為代碼數(shù)據(jù);步驟S122,對轉(zhuǎn)換后的待更新文件進(jìn)行編譯處理,得到編譯后的待更新文件;步驟S123,對編譯后的待更新文件進(jìn)行加密處理,得到處理后的待更新文件。下載到本地指定文件夾的待更新文件,可以包括但不限于:腳本、策劃表和資源,這些文件無法直接傳輸?shù)揭苿咏K端,當(dāng)然也不能在本地被其他用戶隨意訪問,為此,需要進(jìn)行以下處理:(1)導(dǎo)表(其實(shí)質(zhì)相當(dāng)于數(shù)據(jù)轉(zhuǎn)換處理)以游戲研發(fā)過程為例,在游戲設(shè)計(jì)開發(fā)過程中,會使用大量的數(shù)據(jù),例如:技能的數(shù)值、人物的屬性,這些數(shù)據(jù)通常由策劃通過excel表或者csv來填寫,然后再轉(zhuǎn)換成游戲中的數(shù)據(jù)被加以使用。因此,將策劃表轉(zhuǎn)換為游戲中直接使用的數(shù)據(jù)的過程被稱為導(dǎo)表。導(dǎo)表需要借助導(dǎo)表工具進(jìn)行,各個(gè)游戲研發(fā)項(xiàng)目(游戲項(xiàng)目由于自身數(shù)據(jù)的復(fù)雜性,才會出現(xiàn)導(dǎo)表這種操作,而一般的應(yīng)用軟件開發(fā)是不需要執(zhí)行導(dǎo)表操作的)均配備有相應(yīng)的導(dǎo)表工具,而且都是可以獨(dú)立使用的,因此,通過導(dǎo)表工具可以將變動的表格數(shù)據(jù)轉(zhuǎn)換成游戲內(nèi)使用的數(shù)據(jù)。(2)加密加密過程可以包括以下兩個(gè)步驟:第一步、對拉取到本地的文件(主要是指代碼文件和導(dǎo)表得到的數(shù)據(jù),其他文件不需要編譯)進(jìn)行編譯,如果是js文件,則會編譯成jsc,如果是py文件,則可以編譯成pyc;第二步、為了確保文件的安全性,在編譯文件的基礎(chǔ)上,還需要對編譯后的文件進(jìn)行加密。在加密處理過程中,不僅對編譯后的代碼和數(shù)據(jù)進(jìn)行加密,同時(shí)還會對資源進(jìn)行加密,但在策劃表文件經(jīng)過導(dǎo)表處理后,已經(jīng)轉(zhuǎn)換為游戲文件,因此,策劃表文件會在本地進(jìn)行刪除而不需要加密。需要說明的是,在本發(fā)明優(yōu)選實(shí)施例中并未對使用的加密算法進(jìn)行嚴(yán)格限制,只要能夠滿足客戶端的解密識別需求,均在本發(fā)明的適用范圍內(nèi)。另外,為了確保本地堆積過多從svn服務(wù)器獲取的變更文件,可以每次獲取部分變更文件,再對該部分變更文件進(jìn)行上述處理,然后再將該部分變更文件刪除。該過程雖然與一次性從svn服務(wù)器獲取全部變更文件再統(tǒng)一進(jìn)行處理的方式的處理結(jié)果一致,但出于安全性考量,前者提供操作方式更加安全??蛇x地,在步驟S14中,將處理后的待更新文件發(fā)送至用戶終端可以包括以下執(zhí)行步驟:步驟S141,判斷用戶終端上是否存在用于存儲處理后的待更新文件的指定目錄;步驟S142,如果存在指定目錄,則將處理后的待更新文件發(fā)送至指定目錄;步驟S143,如果不存在指定目錄,則在創(chuàng)建指定目錄后,再將處理后的待更新文件發(fā)送至指定目錄。對于使用Android操作系統(tǒng)的移動終端,可以通過adb工具來操作。adb的全稱為AndroidDebugBridge,其為連接Android移動終端與PC端的橋梁,由此起到調(diào)試橋的作用。借助adb工具可以管理移動終端與PC端模擬器的狀態(tài),還可以在移動終端上執(zhí)行其他操作,例如:安裝軟件、系統(tǒng)升級、運(yùn)行shell命令。借助adb工具的shell指令可以將指定的文件上傳到指定目錄。文件上傳的指令具體如下:adbpushfile_from_pathfile_to_path其中,file_from_path表示本地需要上傳的文件的路徑,file_to_path表示需要上傳到的Android移動終端上的目錄。例如:將本地的a.js上傳到Android移動終端的sd卡的netease/game_name/script下的aaa文件夾下,可以采用如下指令:adbpusha.js/storage/sdcard0/netease/game_name/script/aaa/a.js采用函數(shù)subprocess.Popen()便可以完成上述操作。具體地,subprocess是python提供的一個(gè)模塊,subprocess模塊中定義了一個(gè)類Popen。因此,可以使用Popen來創(chuàng)建進(jìn)程,并與進(jìn)程進(jìn)行復(fù)雜的交互,其構(gòu)造函數(shù)如下:subprocess.Popen(args,bufsize=0,executable=None,stdin=None,stdout=None,stderr=None,preexec_fn=None,close_fds=False,shell=False,cwd=None,env=None,universal_newlines=False,startupinfo=None,creationflags=0);其中,參數(shù)args為待執(zhí)行的指令,上述adb的語句可以直接定義為:args=“adbpusha.js……”,其他參數(shù)與執(zhí)行方式、返回類型等內(nèi)容相關(guān),可以根據(jù)具體需求進(jìn)行封裝。然而,如果上述aaa文件夾不存在,則上述指令將會存在執(zhí)行失敗的風(fēng)險(xiǎn),這就需要在進(jìn)行文件拷貝時(shí),首先進(jìn)行目錄檢查,如果發(fā)現(xiàn)缺少這個(gè)目錄,便需要個(gè)人新建一個(gè)相同的目錄??截愇募桨沧恳苿咏K端可以分成以下步驟:第一步、檢查已有的特定目錄下是否存在下一級目錄,其可以使用指令“adbshellls上層目錄名|grep下層目錄名”來完成,然后再根據(jù)指令的輸出結(jié)果來加以判斷。第二步、如果不存在下層目錄,則采用“adbshellmkdir目錄名”來建立下層目錄,經(jīng)過反復(fù)操作直至最內(nèi)層目錄。第三步、在最內(nèi)層目錄下,判斷是否存在需要push的文件,如果存在,需要先刪除,然后再執(zhí)行push操作。對于使用iOS操作系統(tǒng)的移動終端,如果屬于越獄的iOS設(shè)備,通過itools→應(yīng)用→具體應(yīng)用→文件共享,可以查找到特定Documents目錄,該目錄下存儲有這個(gè)應(yīng)用相關(guān)的文件,當(dāng)然也包含待更新文件。在采用ssh連接到IOS越獄設(shè)備后,便可以執(zhí)shell命令了。python的paramiko模塊實(shí)現(xiàn)了SSH協(xié)議,能夠方便地與遠(yuǎn)程計(jì)算機(jī)交互,其實(shí)現(xiàn)方式如下:importparamiko//引入paramiko模塊ssh=paramiko.SSHClient()//建立一個(gè)ssh客戶端ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())//設(shè)置ssh客戶端屬性ssh.connect(“IP地址”,22,“用戶名”,“密碼”)//將ssh客戶端連接到指定的服務(wù)端stdin,stdout,stderr=ssh.exec_command(“你的命令”)//通過成功連接的客戶端,向服務(wù)器發(fā)送指令,以使服務(wù)器執(zhí)行相應(yīng)的指令pringstdout.readlines()//收集命令執(zhí)行后返回的結(jié)果ssh.close()//關(guān)閉ssh連接另外,通過paramiko還可以傳輸文件,其具體格式如下:#paramiko進(jìn)行文件傳輸sftp=self.ssh.open_sftp()sftp.put(file_from_path,file_to_path)其中,file_from_path表示本地需要上傳的文件的路徑,file_to_path表示需要上傳到的iOS移動終端上的目錄。另外,使用iOS操作系統(tǒng)的移動終端在上傳文件前同樣需要進(jìn)行目錄檢查,其操作過程在此不再贅述??蛇x地,在步驟S14,將處理后的待更新文件發(fā)送至用戶終端之前,還可以包括以下處理步驟:步驟S17,當(dāng)用戶終端運(yùn)行第一類型系統(tǒng)時(shí),采用第五預(yù)設(shè)指令檢測與用戶終端是否成功連接,其中,第一類型操作系統(tǒng)為開源類操作系統(tǒng)。以使用Android操作系統(tǒng)的移動終端為例,可以通過數(shù)據(jù)線將安卓移動終端與PC進(jìn)行連接,默認(rèn)會安裝USB驅(qū)動,在cmd窗口輸入“adbdevices”檢查移動終端是否已經(jīng)連接成功,如果連接成功,則會顯示連接的移動終端的標(biāo)識信息。python調(diào)用adb工具,需要采用在子進(jìn)程執(zhí)行cmd的方式,其具體格式如下:importsubprocess//引入python子進(jìn)程模塊cmd_str=“adbshelladbdevices”//定義需要執(zhí)行的adb指令p=subprocess.Popen(cmd_str,shell=False,stdout=subprocess.PIPE,stderr=subprocess.STDOUT)//定義子進(jìn)程中執(zhí)行adb的方式,并執(zhí)行該命令retMsg=p.stdout.read()//收集命令執(zhí)行后返回的結(jié)果??蛇x地,在步驟S14,將處理后的待更新文件發(fā)送至用戶終端之前,還可以包括以下執(zhí)行步驟:步驟S18,當(dāng)用戶終端運(yùn)行第二類型系統(tǒng)時(shí),采用預(yù)設(shè)通訊連接工具將本地預(yù)設(shè)互聯(lián)網(wǎng)協(xié)議IP地址轉(zhuǎn)換為用戶終端的IP地址,并檢測與用戶終端是否成功連接,其中,第二類型操作系統(tǒng)為非開源類操作系統(tǒng)。以使用iOS操作系統(tǒng)的移動終端為例,在使用上述paramiko模塊連接iOS設(shè)備和個(gè)人計(jì)算機(jī)時(shí),需要獲取移動終端的IP地址。考慮到手動輸入IP地址較為不便,此處可以借助工具:itunnel_mux。這個(gè)工具可以將iOS設(shè)備的IP地址映射為本地IP地址,換言之,在執(zhí)行指令ssh.connect時(shí),輸入的IP地址為127.0.0.1即可,借助該工具可以動態(tài)連接任意iOS移動終端而無需手動輸入其對應(yīng)的ip地址。因此,用戶只需要輸入固定的本地IP地址:127.0.0.1,itunnel_mux工具便可以自動獲取iOS設(shè)備的真實(shí)IP地址,然后將真實(shí)IP地址和固定的本地IP地址進(jìn)行映射,以使用戶感覺訪問iOS設(shè)備的文件如同訪問本地的文件一樣。上面所述的均是如何將更新的內(nèi)容上傳到具有應(yīng)用程序安裝包的移動終端,最后一步便是讓上傳的更新內(nèi)容能夠生效,在應(yīng)用程序界面中查看到最新內(nèi)容。在將文件上傳到patch目錄后,如果需要使得patch目錄生效,則需要游戲開通相應(yīng)的功能。以游戲類應(yīng)用為例,此處需要采用游戲的patch更新機(jī)制。在通常情況下,游戲客戶端可以通過下載patch來達(dá)到更新游戲應(yīng)用的目的,而patch的原理便是將特定文件上傳到游戲應(yīng)用指定的patch目錄下,并在加載游戲時(shí),優(yōu)先使用patch目錄下的文件,然后再使用原有的文件,這樣便可以實(shí)現(xiàn)通過patch來替代原有文件的目的。在通常情況下,游戲引擎會存在接口來輔助實(shí)現(xiàn)patch更新,在實(shí)際應(yīng)用過程中只需要設(shè)置搜索路徑即可。對于Android移動終端,可以在文件管理系統(tǒng)下查找到安裝游戲的目錄,目錄下面通常會存在一個(gè)放置patch的文件夾,每次只要將更新文件按照游戲?qū)?yīng)的方式上傳到相應(yīng)的文件夾,再重新運(yùn)行游戲客戶端,這些更新文件即可生效。iOS移動終端也是如此,但稍有不同的是,iOS移動終端需要在越獄的情況下才能看到相關(guān)應(yīng)用下的目錄。下面將以圖3所示的優(yōu)選實(shí)施方式對上述優(yōu)選實(shí)施過程作進(jìn)一步地詳細(xì)描述。圖3是根據(jù)本發(fā)明優(yōu)選實(shí)施例的應(yīng)用程序打包過程的示意圖。如圖3所示,該打包方法適用于快速打包的windows客戶端工具(與WORD應(yīng)用相類似,該工具在window系統(tǒng)下運(yùn)行,可以更新多個(gè)平臺的游戲包,并且安卓或iOS游戲包可以通過連接至安裝有windows操作系統(tǒng)的用戶設(shè)備上進(jìn)行更新,使用python+pyQT來實(shí)現(xiàn)),通過運(yùn)行該工具,便可以實(shí)現(xiàn)本地安裝包的快速更新。用戶只需要將移動終端(操作系統(tǒng)類型包括:Android、iOS)與個(gè)人計(jì)算機(jī)相連,然后由游戲測試人員選擇打包的平臺、版本、模式,例如:在游戲代碼被更改后,測試或開發(fā)人員需要觀察改動在iOS智能手機(jī)上的具體運(yùn)行情況,游戲測試人員便可選擇相應(yīng)的平臺、版本以及模式,并在游戲更新后,查看iOS手機(jī)上最新包的具體運(yùn)行情況。通過游戲測試人員點(diǎn)擊“開始打包”按鈕,便可以將待更新內(nèi)容同步到移動終端,完成對應(yīng)用程序客戶端的更新操作,同時(shí)還可以展示過程日志,其更新方式可以包括以下之一:(1)如果僅更改腳本,則對腳本執(zhí)行更新操作;(2)如果僅更改導(dǎo)表,則對導(dǎo)表執(zhí)行更新操作;(3)其他指定的更新選項(xiàng);由此可見,上述更新過程具有針對性。上述打包流程可以包括如下處理步驟:第一步、在點(diǎn)擊開始打包按鈕的觸發(fā)下,安裝有打包工具的個(gè)人計(jì)算機(jī)會向打包服務(wù)器發(fā)送快速打包請求,以查詢上次成功打完相同類型包(即同一個(gè)包的前一個(gè)版本)的時(shí)間;第二步、打包服務(wù)器在接收到上述快速打包請求后,對快速打包請求進(jìn)行解析,然后返回上一次使用打包機(jī)進(jìn)行正常流程打包的時(shí)間信息;第三步、個(gè)人計(jì)算機(jī)在接收到上述時(shí)間信息后,向版本管理服務(wù)器發(fā)送請求下載指定時(shí)間間隔(即從上次打包操作完成的時(shí)間點(diǎn)起算至當(dāng)前時(shí)間點(diǎn))內(nèi)的變更腳本內(nèi)容;第四步、從版本管理服務(wù)器(即svn倉庫服務(wù)器)獲取這段時(shí)間內(nèi)的更新內(nèi)容到本地,其中,待獲取的內(nèi)容可以根據(jù)用戶在打包工具上選擇的平臺、版本、模式等信息進(jìn)行選擇,以便有針對性地執(zhí)行下載操作。個(gè)人計(jì)算機(jī)本地會對獲取到的更新內(nèi)容進(jìn)行一系列的處理,例如:數(shù)據(jù)導(dǎo)表、編譯、加密;第五步、個(gè)人計(jì)算機(jī)將處理后的變更文件上傳到安裝有游戲客戶端的移動終端的相應(yīng)目錄下,然后移動終端通過替換這些更新內(nèi)容,以實(shí)現(xiàn)應(yīng)用程序更新的目的。通過上述打包流程可以選擇只更新腳本或者資源針對性地進(jìn)行游戲打包,能大大節(jié)約游戲打包時(shí)間。另外,上述打包流程能夠同時(shí)支持安卓和iOS打包,將打包過程轉(zhuǎn)移到本地來執(zhí)行,由此可以在不同的個(gè)人計(jì)算機(jī)上并行執(zhí)行。根據(jù)本發(fā)明實(shí)施例,還提供了一種應(yīng)用程序的打包裝置的實(shí)施例,圖4是根據(jù)本發(fā)明實(shí)施例的應(yīng)用程序的打包裝置的結(jié)構(gòu)框圖。如圖4所示,該裝置可以包括:獲取模塊10,用于向版本管理服務(wù)器獲取從第一時(shí)間點(diǎn)至第二時(shí)間點(diǎn)之間產(chǎn)生的待更新文件,其中,第二時(shí)間點(diǎn)為當(dāng)前時(shí)刻,第一時(shí)間點(diǎn)為距離當(dāng)前時(shí)刻最近的前一次對待發(fā)布應(yīng)用程序進(jìn)行打包處理的完成時(shí)刻;處理模塊20,用于對待更新文件進(jìn)行打包處理;發(fā)送模塊30,用于將處理后的待更新文件發(fā)送至用戶終端,其中,用戶終端安裝有待發(fā)布應(yīng)用程序??蛇x地,圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的應(yīng)用程序的打包裝置的結(jié)構(gòu)框圖。如圖5所示,上述裝置還可以包括:請求模塊40,用于向打包服務(wù)器發(fā)送查詢請求消息,其中,查詢請求消息用于向打包服務(wù)器查詢第一時(shí)間點(diǎn);響應(yīng)模塊50,用于接收打包服務(wù)器反饋的查詢響應(yīng)消息,其中,查詢響應(yīng)消息中攜帶的信息包括:第一時(shí)間點(diǎn)??蛇x地,第一時(shí)間點(diǎn)通過在打包服務(wù)器的打包腳本中添加第一預(yù)設(shè)指令寫入至打包服務(wù)器上的指定存儲區(qū)域。可選地,獲取模塊10可以包括:轉(zhuǎn)換單元(圖中未示出),用于采用第二預(yù)設(shè)指令將第一時(shí)間點(diǎn)轉(zhuǎn)換為第一版本號以及將第二時(shí)間點(diǎn)轉(zhuǎn)換為第二版本號;獲取單元(圖中未示出),用于采用第三預(yù)設(shè)指令向版本管理服務(wù)器獲取位于第一版本號與第二版本號之間的待更新文件在版本管理服務(wù)器上的文件存儲路徑;存儲單元(圖中未示出),用于采用第四預(yù)設(shè)指令將從文件存儲路徑獲取到的待更新文件存儲至本地指定存儲區(qū)域。可選地,處理模塊20可以包括:第一處理單元(圖中未示出),用于對待更新文件進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的待更新文件,其中,轉(zhuǎn)換處理用于將待更新文件中的原始數(shù)據(jù)轉(zhuǎn)換為代碼數(shù)據(jù);第二處理單元(圖中未示出),用于對轉(zhuǎn)換后的待更新文件進(jìn)行編譯處理,得到編譯后的待更新文件;第三處理單元(圖中未示出),用于對編譯后的待更新文件進(jìn)行加密處理,得到處理后的待更新文件??蛇x地,發(fā)送模塊30可以包括:判斷單元300,用于判斷用戶終端上是否存在用于存儲處理后的待更新文件的指定目錄;發(fā)送單元302,用于在判斷單元輸出為是時(shí),將處理后的待更新文件發(fā)送至指定目錄;第四處理單元,用于在判斷單元輸出為否時(shí),創(chuàng)建指定目錄,并將處理后的待更新文件發(fā)送至指定目錄??蛇x地,如圖5所示,上述裝置還可以包括:第一檢測模塊60,用于當(dāng)用戶終端運(yùn)行第一類型系統(tǒng)時(shí),采用第五預(yù)設(shè)指令檢測與用戶終端是否成功連接,其中,第一類型操作系統(tǒng)為開源類操作系統(tǒng)??蛇x地,如圖5所示,上述裝置還可以包括:第二檢測模塊70,用于當(dāng)用戶終端運(yùn)行第二類型系統(tǒng)時(shí),采用預(yù)設(shè)通訊連接工具將本地預(yù)設(shè)互聯(lián)網(wǎng)協(xié)議IP地址轉(zhuǎn)換為用戶終端的IP地址,并檢測與用戶終端是否成功連接,其中,第二類型操作系統(tǒng)為非開源類操作系統(tǒng)。上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。在本發(fā)明的上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-OnlyMemory)、隨機(jī)存取存儲器(RAM,RandomAccessMemory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本
技術(shù)領(lǐng)域
:的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
金华市| 铅山县| 玉山县| 娱乐| 大港区| 石狮市| 磐石市| 万全县| 郴州市| 涟水县| 和平县| 阳高县| 利津县| 遵化市| 邯郸市| 贵州省| 科技| 囊谦县| 法库县| 广安市| 海晏县| 农安县| 武定县| 临西县| 隆安县| 廉江市| 灌南县| 临西县| 平武县| 孝昌县| 武安市| 桐梓县| 新宁县| 伊川县| 灯塔市| 宝清县| 新营市| 宣威市| 温州市| 蛟河市| 宜黄县|