數(shù)據包獲取方法和裝置的制造方法
【技術領域】
[0001]本公開是關于網絡技術領域,具體來說是關于數(shù)據包獲取方法和裝置。
【背景技術】
[0002]隨著智能設備的快速發(fā)展,用戶對智能設備的系統(tǒng)要求越來越高,為了滿足用戶日益提升的要求,智能設備的供應商需要經常更新系統(tǒng)。而系統(tǒng)是以代碼為基礎構建的,如果要更新系統(tǒng),首先要對系統(tǒng)的代碼進行更新。
[0003]原系統(tǒng)中包括很多原始代碼,這些原始代碼可以保存在代碼服務器上。當開發(fā)人員要對其中的指定原始代碼進行修改時,可以使用計算機從該代碼服務器上下載該指定原始代碼,并在該計算機上對該指定原始代碼進行修改,該計算機獲取修改后的代碼,從該代碼服務器上下載系統(tǒng)的所有原始代碼,根據開發(fā)人員手動輸入的編譯指令,對下載的所有原始代碼和該修改后的代碼進行編譯,編譯完成時得到數(shù)據包,該計算機可以向測試設備發(fā)送該數(shù)據包,該測試設備安裝該數(shù)據包,開發(fā)人員即可在該測試設備上,查看該測試設備的運行狀態(tài),從而驗證系統(tǒng)的更新效果。
[0004]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)相關技術存在缺陷,例如:
[0005]上述下載代碼和編譯代碼的過程會在很長時間內,占用計算機過多的資源,影響計算機的正常使用。其中編譯代碼的過程只能由開發(fā)人員通過手動輸入編譯指令完成,操作繁瑣,很容易會出現(xiàn)錯誤,而且要求開發(fā)人員必須具有編譯代碼的技術背景,對開發(fā)人員的技術背景要求很高。
【發(fā)明內容】
[0006]為了解決相關技術中存在的問題,本公開提供了一種數(shù)據包獲取方法和裝置。所述技術方案如下:
[0007]根據本公開實施例的第一方面,提供了一種數(shù)據包獲取方法,所述方法應用于編譯服務器中,所述方法包括:
[0008]接收中間服務器發(fā)送的應用參數(shù)信息,所述應用參數(shù)信息由終端發(fā)送給所述中間服務器,所述中間服務器用于從多個編譯服務器中,選擇所述編譯服務器,且所述應用參數(shù)信息至少包括代碼版本信息;
[0009]獲取所述代碼版本信息對應的代碼;
[0010]根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包;
[0011]向所述中間服務器發(fā)送所述數(shù)據包,所述中間服務器用于生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0012]在另一實施例中,所述獲取所述代碼版本信息對應的代碼,包括:
[0013]當所述代碼版本信息包括第一類代碼的第一代碼版本信息時,根據代碼版本信息與第一類代碼之間的對應關系,從預先下載的第一類代碼中,獲取所述第一代碼版本信息對應的第一代碼,所述第一類代碼是指已確認的代碼;或者,
[0014]當所述代碼版本信息包括第二類代碼的第二代碼版本信息時,調用與審核服務器之間的接口,獲取所述第二代碼版本信息對應的第二代碼,所述審核服務器用于存儲第二類代碼,所述第二類代碼是指未確認的代碼;或者,
[0015]當所述代碼版本信息包括第一類代碼的第一代碼版本信息和第二類代碼的第二代碼版本信息時,根據代碼版本信息與第一類代碼之間的對應關系,從預先下載的第一類代碼中,獲取所述第一代碼版本信息對應的第一代碼,調用與所述審核服務器之間的接口,獲取所述第二代碼版本信息對應的第二代碼,根據所述第二代碼,對所述第一代碼進行修改,得到修改后的代碼。
[0016]在另一實施例中,所述獲取所述代碼版本信息對應的代碼之前,所述方法還包括:
[0017]從代碼服務器上,下載每個第一類代碼,所述代碼服務器用于存儲第一類代碼;
[0018]獲取每個第一類代碼的代碼版本信息;
[0019]根據每個第一類代碼的代碼版本信息,建立代碼版本信息與第一類代碼之間的對應關系。
[0020]在另一實施例中,所述根據所述第二代碼,對所述第一代碼進行修改,得到修改后的代碼之后,所述方法還包括:
[0021]當所述應用參數(shù)信息還包括指定文件標識時,根據所述指定文件標識,獲取所述指定文件,所述指定文件中包括代碼修改后的路徑;
[0022]按照所述指定文件中的路徑,重新加載所述修改后的代碼;
[0023]相應的,所述根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包,包括:
[0024]根據所述預設編譯指令,對重新加載的代碼進行編譯,得到數(shù)據包。
[0025]在另一實施例中,所述根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包之前,所述方法還包括:
[0026]當所述應用參數(shù)信息還包括環(huán)境變量信息時,根據所述環(huán)境變量信息,配置環(huán)境變量;
[0027]相應的,所述根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包,包括:
[0028]根據所述預設編譯指令和所述環(huán)境變量,對所述獲取到的代碼進行編譯,得到所述數(shù)據包。
[0029]根據本公開實施例的第二方面,提供了一種數(shù)據包獲取方法,所述方法應用于終端中,所述方法包括:
[0030]顯示應用參數(shù)輸入界面,所述應用參數(shù)輸入界面用于輸入在獲取數(shù)據包過程中所需的參數(shù);
[0031]獲取在所述應用參數(shù)輸入界面輸入的應用參數(shù)信息,所述應用參數(shù)信息至少包括代碼版本信息;
[0032]向中間服務器發(fā)送所述應用參數(shù)信息,所述中間服務器用于從多個編譯服務器中選擇一個處于空閑狀態(tài)的編譯服務器,向選擇的編譯服務器發(fā)送所述應用參數(shù)信息,所述選擇的編譯服務器用于獲取所述代碼版本信息對應的代碼;根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包,向所述中間服務器發(fā)送所述數(shù)據包,所述中間服務器用于生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0033]在另一實施例中,所述方法還包括:
[0034]當檢測到對當前代碼的編輯操作時,根據所述編輯操作,對當前代碼進行編輯,得到編輯后的代碼;
[0035]當接收到代碼提交指令時,向審核服務器發(fā)送所述編輯后的代碼,所述審核服務器用于存儲所述編輯后的代碼。
[0036]根據本公開實施例的第三方面,提供了一種數(shù)據包獲取方法,所述方法應用于中間服務器中,所述方法包括:
[0037]接收終端發(fā)送的應用參數(shù)信息,所述應用參數(shù)信息至少包括代碼版本信息;
[0038]從多個編譯服務器中,選擇一個處于空閑狀態(tài)的編譯服務器;
[0039]向所述選擇的編譯服務器發(fā)送所述應用參數(shù)信息,所述選擇的編譯服務器用于獲取所述代碼版本信息對應的代碼;根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包;
[0040]當接收到所述數(shù)據包時,存儲所述數(shù)據包;
[0041]根據所述數(shù)據包的存儲位置,生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0042]在另一實施例中,所述方法還包括:
[0043]當所述多個編譯服務器中的每個編譯服務器均處于繁忙狀態(tài)時,每當接收到應用參數(shù)信息時,將當前接收到的應用參數(shù)信息添加至任務隊列;
[0044]當任一編譯服務器從繁忙狀態(tài)切換至空閑狀態(tài)時,按照所述任務隊列中每個應用參數(shù)信息的添加時間,獲取添加時間最早的應用參數(shù)信息;
[0045]向所述從繁忙狀態(tài)切換至空閑狀態(tài)的編譯服務器發(fā)送所述添加時間最早的應用參數(shù)信息。
[0046]根據本公開實施例的第四方面,提供了一種數(shù)據包獲取裝置,所述裝置包括:
[0047]信息接收模塊,用于接收中間服務器發(fā)送的應用參數(shù)信息,所述應用參數(shù)信息由終端發(fā)送給所述中間服務器,所述中間服務器用于從多個編譯服務器中,選擇所述編譯服務器,且所述應用參數(shù)信息至少包括代碼版本信息;
[0048]代碼獲取模塊,用于獲取所述代碼版本信息對應的代碼;
[0049]編譯模塊,用于根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包;
[0050]數(shù)據包發(fā)送模塊,用于向所述中間服務器發(fā)送所述數(shù)據包,所述中間服務器用于生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0051]在另一實施例中,所述代碼獲取模塊用于當所述代碼版本信息包括第一類代碼的第一代碼版本信息時,根據代碼版本信息與第一類代碼之間的對應關系,從預先下載的第一類代碼中,獲取所述第一代碼版本信息對應的第一代碼,所述第一類代碼是指已確認的代碼;或者,當所述代碼版本信息包括第二類代碼的第二代碼版本信息時,調用與審核服務器之間的接口,獲取所述第二代碼版本信息對應的第二代碼,所述審核服務器用于存儲第二類代碼,所述第二類代碼是指未確認的代碼;或者,當所述代碼版本信息包括第一類代碼的第一代碼版本信息和第二類代碼的第二代碼版本信息時,根據代碼版本信息與第一類代碼之間的對應關系,從預先下載的第一類代碼中,獲取所述第一代碼版本信息對應的第一代碼,調用與所述審核服務器之間的接口,獲取所述第二代碼版本信息對應的第二代碼,根據所述第二代碼,對所述第一代碼進行修改,得到修改后的代碼。
[0052]在另一實施例中,所述裝置還包括:
[0053]代碼下載模塊,用于從代碼服務器上,下載每個第一類代碼,所述代碼服務器用于存儲第一類代碼;
[0054]版本信息獲取模塊,用于獲取每個第一類代碼的代碼版本信息;
[0055]對應關系建立模塊,用于根據每個第一類代碼的代碼版本信息,建立代碼版本信息與第一類代碼之間的對應關系。
[0056]在另一實施例中,所述裝置還包括:
[0057]指定文件獲取模塊,用于當所述應用參數(shù)信息還包括指定文件標識時,根據所述指定文件標識,獲取所述指定文件,所述指定文件中包括代碼修改后的路徑;
[0058]加載模塊,用于按照所述指定文件中的路徑,重新加載所述修改后的代碼;
[0059]相應的,所述編譯模塊用于根據所述預設編譯指令,對重新加載的代碼進行編譯,得到數(shù)據包。
[0060]在另一實施例中,所述裝置還包括:
[0061]配置模塊,用于當所述應用參數(shù)信息還包括環(huán)境變量信息時,根據所述環(huán)境變量信息,配置環(huán)境變量;
[0062]相應的,所述編譯模塊用于根據所述預設編譯指令和所述環(huán)境變量,對所述獲取到的代碼進行編譯,得到所述數(shù)據包。
[0063]根據本公開實施例的第五方面,提供了一種數(shù)據包獲取裝置,所述裝置包括:
[0064]界面顯示模塊,用于顯示應用參數(shù)輸入界面,所述應用參數(shù)輸入界面用于輸入在獲取數(shù)據包過程中所需的參數(shù);
[0065]信息獲取模塊,用于獲取在所述應用參數(shù)輸入界面輸入的應用參數(shù)信息,所述應用參數(shù)信息至少包括代碼版本信息;
[0066]發(fā)送模塊,用于向中間服務器發(fā)送所述應用參數(shù)信息,所述中間服務器用于從多個編譯服務器中選擇一個處于空閑狀態(tài)的編譯服務器,向選擇的編譯服務器發(fā)送所述應用參數(shù)信息,所述選擇的編譯服務器用于獲取所述代碼版本信息對應的代碼;根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包,向所述中間服務器發(fā)送所述數(shù)據包,所述中間服務器用于生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0067]在另一實施例中,所述裝置還包括:
[0068]編輯模塊,用于當檢測到對當前代碼的編輯操作時,根據所述編輯操作,對當前代碼進行編輯,得到編輯后的代碼;
[0069]提交模塊,用于當接收到代碼提交指令時,向審核服務器發(fā)送所述編輯后的代碼,所述審核服務器用于存儲所述編輯后的代碼。
[0070]根據本公開實施例的第六方面,提供了一種數(shù)據包獲取裝置,所述裝置包括:
[0071]信息接收模塊,用于接收終端發(fā)送的應用參數(shù)信息,所述應用參數(shù)信息至少包括代碼版本信息;
[0072]選擇模塊,用于從多個編譯服務器中,選擇一個處于空閑狀態(tài)的編譯服務器;
[0073]信息發(fā)送模塊,用于向所述選擇的編譯服務器發(fā)送所述應用參數(shù)信息,所述選擇的編譯服務器用于獲取所述代碼版本信息對應的代碼;根據預設編譯指令,對所述獲取到的代碼進行編譯,得到數(shù)據包;
[0074]存儲模塊,用于當接收到所述數(shù)據包時,存儲所述數(shù)據包;
[0075]鏈接地址生成模塊,用于根據所述數(shù)據包的存儲位置,生成所述數(shù)據包的鏈接地址,以供所述數(shù)據包的下載。
[0076]在另一實施例中,所述裝置還包括:
[0077]任務添加模塊,用于當所述多個編譯服務器中的每個編譯服務器均處于繁忙狀態(tài)時,每當接收到應用參數(shù)信息時,將當前接收到的應用參數(shù)信息添加至任務隊列;
[0078]信息選取模塊,用于當任一編譯服務器從繁忙狀態(tài)切換至空閑狀態(tài)時,按照所述任務隊列