一種sdk活躍度分析方法、網(wǎng)絡(luò)服務(wù)器及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種SDK活躍度分析方法,包括:網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的軟件開發(fā)工具包(SDK);所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。本發(fā)明還相應(yīng)地公開了一種網(wǎng)絡(luò)服務(wù)器及SDK活躍度分析系統(tǒng)。本發(fā)明基于發(fā)布的應(yīng)用實(shí)際使用的SDK進(jìn)行SDK活躍度分析,從而能夠反映SDK的實(shí)際應(yīng)用情況,分析結(jié)果準(zhǔn)確度較高。
【專利說明】—種SDK活躍度分析方法、網(wǎng)絡(luò)服務(wù)器及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件開發(fā)領(lǐng)域,尤其涉及一種軟件開發(fā)工具包(SoftwareDevelopmentKit, SDK)活躍度分析方法、網(wǎng)絡(luò)服務(wù)器及系統(tǒng)。
【背景技術(shù)】
[0002]SDK通常包含輔助開發(fā)某一類應(yīng)用的相關(guān)文檔、范例和工具的集合,開發(fā)者可以通過SDK提供的應(yīng)用程序編程接口(Application Programming Interface, API)實(shí)現(xiàn)相關(guān)領(lǐng)域應(yīng)用的快速開發(fā)。
[0003]隨著各類應(yīng)用開發(fā)需求的不斷增長,很多廠商甚至個(gè)人都相繼推出自己的SDK,以吸引開發(fā)者基于自己的SDK構(gòu)建和發(fā)布應(yīng)用。隨著SDK種類和數(shù)量的不斷增多,SDK的活躍度分析顯得尤為重要,通過SDK的活躍度分析,開發(fā)者和SDK的提供者可以快速分辨出SDK的應(yīng)用情況,從而便于進(jìn)行后續(xù)處理。
[0004]目前SDK的活躍度分析通常是以下載量作為衡量標(biāo)準(zhǔn)的,即通過SDK的下載次數(shù)衡量其活躍度。該分析方式下,下載服務(wù)器通常會開啟一個(gè)下載記數(shù)的服務(wù),該服務(wù)用于更新和保存各SDK的下載次數(shù),當(dāng)某一 SDK被用戶下載時(shí),下載服務(wù)便會更新該SDK的下載次數(shù)并保存。
[0005]但是,以下載量作為SDK活躍度的分析標(biāo)準(zhǔn),在很多情況下并不能實(shí)際反映SDK的真實(shí)使用情況。很多開發(fā)者會一并下載大量的SDK,但實(shí)際使用的SDK所占比例很少;另外,SDK 一旦下載之后就可以無限傳播,很多SDK的使用者并非從SDK下載門戶下載SDK使用,而是通過二次傳播的途徑獲得,因此,以下載量作為SDK活躍度的衡量指標(biāo)容易造成SDK活躍度分析結(jié)果不準(zhǔn)確。
【發(fā)明內(nèi)容】
[0006]有鑒于此,本發(fā)明的主要目的在于提供一種SDK活躍度分析方法、網(wǎng)絡(luò)服務(wù)器及系統(tǒng),能夠提高分析結(jié)果準(zhǔn)確度。
[0007]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0008]一種SDK活躍度分析方法,包括:
[0009]網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0010]所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的軟件開發(fā)工具包 SDK ;
[0011]所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
[0012]該方法還包括:網(wǎng)絡(luò)服務(wù)器獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息;
[0013]所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK為:
[0014]所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ;[0015]所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表,確定所述應(yīng)用調(diào)用的SDK。
[0016]所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK之前,該方法還包括:
[0017]所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則執(zhí)行后續(xù)流程;檢查不通過,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0018]所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK之前,該方法還包括:
[0019]所述網(wǎng)絡(luò)服務(wù)器采用編譯器對所述應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,執(zhí)行后續(xù)流程;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0020]該方法還包括:
[0021]用戶在用戶設(shè)備上調(diào)試本地應(yīng)用時(shí),所述用戶設(shè)備與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同步。
[0022]該方法還包括:
[0023]網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;
[0024]所述網(wǎng)絡(luò)服務(wù)器根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0025]一種網(wǎng)絡(luò)服務(wù)器,包括:接收模塊、SDK確定模塊和分析模塊;其中,
[0026]所述接收模塊,用于接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0027]所述SDK確定模塊,用于根據(jù)所述接收模塊接收的所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK;
[0028]所述分析模塊,用于根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
[0029]該網(wǎng)絡(luò)服務(wù)器還包括SDK接口表獲取模塊,
[0030]所述SDK接口表獲取模塊,用于獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息;
[0031]所述SDK確定模塊,具體用于對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ;之后,根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表獲取模塊獲取的SDK接口表,確定所述應(yīng)用調(diào)用的SDK。
[0032]該網(wǎng)絡(luò)服務(wù)器還包括代碼安全檢查模塊,
[0033]所述代碼安全檢查模塊,用于對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;檢查不通過,則向用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0034]該網(wǎng)絡(luò)服務(wù)器還包括編譯模塊,
[0035]所述編譯模塊,用于采用編譯器對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0036]所述編譯模塊,還用于在用戶設(shè)備調(diào)試本地應(yīng)用時(shí),與所述用戶設(shè)備進(jìn)行編譯器版本同步。
[0037]該網(wǎng)絡(luò)服務(wù)器還包括應(yīng)用測試模塊,
[0038]所述接收模塊,還用于接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;
[0039]所述測試模塊,用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0040]一種SDK活躍度分析系統(tǒng),包括用戶設(shè)備和網(wǎng)絡(luò)服務(wù)器;其中,
[0041]所述用戶設(shè)備,用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0042]所述網(wǎng)絡(luò)服務(wù)器,為權(quán)利要求7至10任一項(xiàng)所述的網(wǎng)絡(luò)服務(wù)器。
[0043]所述用戶設(shè)備,還用于在用戶調(diào)試本地應(yīng)用時(shí),與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同步。
[0044]所述用戶設(shè)備,還用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;
[0045]所述網(wǎng)絡(luò)服務(wù)器,還用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0046]本發(fā)明SDK活躍度分析方法、網(wǎng)絡(luò)服務(wù)器及系統(tǒng),網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK ;所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。本發(fā)明基于發(fā)布的應(yīng)用實(shí)際使用的SDK進(jìn)行SDK活躍度分析,從而能夠反映SDK的實(shí)際應(yīng)用情況,分析結(jié)果準(zhǔn)確度較高。
【專利附圖】
【附圖說明】
[0047]圖1為本發(fā)明一實(shí)施例一種SDK活躍度分析方法流程示意圖;
[0048]圖2為本發(fā)明另一實(shí)施例一種SDK活躍度分析方法流程示意圖;
[0049]圖3為本發(fā)明再一實(shí)施例一種SDK活躍度分析方法流程示意圖;
[0050]圖4為本發(fā)明一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖;
[0051]圖5為本發(fā)明另一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖;
[0052]圖6為本發(fā)明實(shí)施例獲取SDK接口表的示意圖;
[0053]圖7為本發(fā)明實(shí)施例生成應(yīng)用臨時(shí)信息表的示意圖;
[0054]圖8為本發(fā)明實(shí)施例生成SDK調(diào)用表的示意圖;
[0055]圖9為本發(fā)明實(shí)施例生成SDK活躍度統(tǒng)計(jì)表的示意圖;
[0056]圖10為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)不意圖;
[0057]圖11為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖;
[0058]圖12為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0059]本發(fā)明的基本思想是:網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK ;所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
[0060]圖1為本發(fā)明一實(shí)施例一種SDK活躍度分析方法流程示意圖,如圖1所示,該方法包括:
[0061]步驟101:網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0062]步驟102:所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK ;
[0063]步驟103:所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
[0064]可選的,該方法還包括:網(wǎng)絡(luò)服務(wù)器獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息。相應(yīng)的,所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK為:所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ;所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表,確定所述應(yīng)用調(diào)用的SDK。
[0065]圖2為本發(fā)明另一實(shí)施例一種SDK活躍度分析方法流程示意圖,如圖2所示,可選的,步驟102之前,該方法還包括:
[0066]步驟102’:所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則執(zhí)行步驟102 ;檢查不通過,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0067]圖3為本發(fā)明再一實(shí)施例一種SDK活躍度分析方法流程示意圖,如圖3所示,可選的,步驟102之前,該方法還包括:
[0068]步驟102”:所述網(wǎng)絡(luò)服務(wù)器采用編譯器對所述應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,執(zhí)行步驟102 ;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
[0069]需要說明的是,進(jìn)行安全性審核的步驟102’和進(jìn)行遠(yuǎn)端編譯結(jié)果審核的步驟102”也可共存于方法流程中,此時(shí),源文件代碼進(jìn)行代碼安全檢查通過且應(yīng)用源文件代碼編譯成功后,再執(zhí)行步驟102。通過審核的應(yīng)用便可上線運(yùn)營。
[0070]一般情況下,用戶(開發(fā)者)登陸SDK下載門戶,選擇應(yīng)用開發(fā)所需的SDK進(jìn)行下載,下載SDK到本地之后,即可基于SDK進(jìn)行應(yīng)用的開發(fā)。由于應(yīng)用開發(fā)過程中,需要不斷的調(diào)試和修改,每次修改之后的應(yīng)用系統(tǒng)編譯,都需要調(diào)用本地的編譯環(huán)境進(jìn)行。因此,可選的,該方法還包括:用戶在用戶設(shè)備上調(diào)試本地應(yīng)用時(shí),所述用戶設(shè)備與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同步。
[0071]對于開發(fā)和調(diào)試階段的應(yīng)用,屬于測試型應(yīng)用。測試型應(yīng)用應(yīng)當(dāng)可以接入網(wǎng)絡(luò)服務(wù)器進(jìn)行真實(shí)環(huán)境的測試。但是對于測試型應(yīng)用,網(wǎng)絡(luò)服務(wù)器可以限制應(yīng)用可使用的資源和/或限制應(yīng)用測試的最大次數(shù),例如,當(dāng)應(yīng)用執(zhí)行次數(shù)超過該應(yīng)用對應(yīng)的最大測試次數(shù)時(shí),網(wǎng)絡(luò)服務(wù)器可以將應(yīng)用停止?!揪唧w實(shí)施方式】可以為:網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;所述網(wǎng)絡(luò)服務(wù)器根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0072]需要說明的是,本發(fā)明中,網(wǎng)絡(luò)服務(wù)器可以是一個(gè)服務(wù)器,也可以是多個(gè)服務(wù)器的組合。
[0073]本發(fā)明實(shí)施例還相應(yīng)地提出了一種網(wǎng)絡(luò)服務(wù)器,如圖4所示,該網(wǎng)絡(luò)服務(wù)器包括:接收模塊、SDK確定模塊和分析模塊;其中,[0074]所述接收模塊,用于接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0075]所述SDK確定模塊,用于根據(jù)所述接收模塊接收的所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK;
[0076]所述分析模塊,用于根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
[0077]圖5為本發(fā)明另一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖,如圖5所示,該網(wǎng)絡(luò)服務(wù)器還包括SDK接口表獲取模塊,
[0078]所述SDK接口表獲取模塊,用于獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息;一般的,SDK接口表獲取模塊對服務(wù)器側(cè)的SDK包進(jìn)行掃描及分析,并生成SDK接口表。SDK除了開發(fā)文檔、使用范例等輔助開發(fā)資料之外,其核心是對外提供接口調(diào)用的API開發(fā)包。以C語言為例,SDK的API開發(fā)包包括頭文件、Iib庫和動態(tài)dll。其中,頭文件和Iib庫用于調(diào)用SDK的應(yīng)用進(jìn)行靜態(tài)系統(tǒng)編譯使用,動態(tài)dll則用于系統(tǒng)動態(tài)接口調(diào)用使用。SDK接口表可以包含頭文件區(qū)和Iib庫區(qū)兩部分,用于記錄SDK對外暴露的靜態(tài)調(diào)用接口。如圖6所示,為了生成SDK接口表,SDK接口表獲取模塊需要對SDK的文件進(jìn)行掃描,并提取SDK中所有頭文件的文件名部分,以生成SDK接口表中的頭文件區(qū)記錄。同時(shí)掃描SDK中所有Iib庫的文件名部分,以生成SDK接口表中的Iib庫記錄。
[0079]所述SDK確定模塊,具體用于對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ;之后,根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表獲取模塊獲取的SDK接口表,確定所述應(yīng)用調(diào)用的SDK。以C語言為例,SDK確定模塊對所述應(yīng)用的源文件代碼進(jìn)行掃描后,可以根據(jù)掃描結(jié)果提取應(yīng)用所使用的所有頭文件和Iib庫,并保存于應(yīng)用臨時(shí)信息表中,實(shí)施例一應(yīng)用臨時(shí)信息表的生成過程如圖7所示,之后,通過應(yīng)用臨時(shí)信息表和SDK接口表的比較,確定所述應(yīng)用調(diào)用的SDK,生成應(yīng)用的SDK調(diào)用表,生成SDK調(diào)用表的過程中,且當(dāng)僅當(dāng)應(yīng)用臨時(shí)信息表的某一頭文件(如下表中的hfilen.h)和某一 lib庫(如下表中的lfilen.lib)同時(shí)對應(yīng)SDK接口表中某個(gè)SDK的接口時(shí),才會將該SDK信息記錄于SDK調(diào)用表中。實(shí)施例一 SDK調(diào)用表的生成過程如圖8所不。
[0080]相應(yīng)的,分析模塊可以根據(jù)各應(yīng)用的SDK調(diào)用表進(jìn)行分析,生成SDK活躍度統(tǒng)計(jì)表,并以此對SDK的活躍度進(jìn)行統(tǒng)計(jì)分析。具體的,首先根據(jù)所有應(yīng)用的SDK調(diào)用表,統(tǒng)計(jì)出各SDK的被調(diào)用情況,生成SDK被調(diào)用記錄表,并根據(jù)各SDK被調(diào)用情況表的調(diào)用次數(shù)字段進(jìn)行排序,生成SDK活躍度統(tǒng)計(jì)表?;赟DK活躍度統(tǒng)計(jì)表,可以配合其他策略進(jìn)一步分析SDK的活躍度,本發(fā)明一實(shí)施例生成SDK活躍度統(tǒng)計(jì)表的過程如圖9所示。
[0081]圖10為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖,如圖10所示,該網(wǎng)絡(luò)服務(wù)器還包括代碼安全檢查模塊,
[0082]所述代碼安全檢查模塊,用于對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;檢查不通過,則向用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。該模塊可集成現(xiàn)有的代碼安全檢查工具,一般的,代碼安全檢查主要采用軟件應(yīng)用安全的靜態(tài)代碼掃描技術(shù)對開發(fā)者提交的應(yīng)用源文件進(jìn)行代碼掃描,并結(jié)合代碼安全檢查模塊,確認(rèn)應(yīng)用代碼的安全性。對于檢測出有代碼安全漏洞的應(yīng)用,審核不予通過,并通知開發(fā)者審核失敗的原因。
[0083]圖11為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖,如圖11所示,該網(wǎng)絡(luò)服務(wù)器還包括編譯模塊,
[0084]所述編譯模塊,用于采用編譯器對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。這里,編譯模塊將開發(fā)者通過用戶設(shè)備提交的應(yīng)用的源文件代碼,通過網(wǎng)絡(luò)服務(wù)器端的編譯器進(jìn)行編譯,如果能夠編譯成應(yīng)用可執(zhí)行文件,則表示編譯成功;如果編譯有誤,則拒絕該應(yīng)用的發(fā)布請求,并將編譯錯(cuò)誤信息通知開發(fā)者。
[0085]為了確保開發(fā)者本地采用的編譯器與應(yīng)用發(fā)布服務(wù)器使用的編譯器版本一致,可選的,所述編譯模塊,還用于在用戶設(shè)備調(diào)試本地應(yīng)用時(shí),與所述用戶設(shè)備進(jìn)行編譯器版本同步。
[0086]圖12為本發(fā)明再一實(shí)施例一種網(wǎng)絡(luò)服務(wù)器結(jié)構(gòu)示意圖,如圖12所示,該網(wǎng)絡(luò)服務(wù)器還包括應(yīng)用測試模塊,
[0087]所述接收模塊,還用于接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;
[0088]所述測試模塊,用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0089]本發(fā)明實(shí)施例還相應(yīng)地提出了一種SDK活躍度分析系統(tǒng),該系統(tǒng)包括用戶設(shè)備和網(wǎng)絡(luò)服務(wù)器;其中,
[0090]所述用戶設(shè)備,用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼;
[0091]所述網(wǎng)絡(luò)服務(wù)器,為上述的網(wǎng)絡(luò)服務(wù)器。
[0092]可選的,所述用戶設(shè)備,還用于在用戶調(diào)試本地應(yīng)用時(shí),與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同步。
[0093]可選的,所述用戶設(shè)備,還用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息;
[0094]所述網(wǎng)絡(luò)服務(wù)器,還用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
[0095]本發(fā)明中,由網(wǎng)絡(luò)服務(wù)器確定被應(yīng)用調(diào)用的SDK,因此可以反映應(yīng)用使用SDK的真實(shí)情況,以此作為SDK活躍度分析的依據(jù)更加客觀真實(shí)。
[0096]以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種SDK活躍度分析方法,其特征在于,該方法包括: 網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼; 所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的軟件開發(fā)工具包SDK ; 所述網(wǎng)絡(luò)服務(wù)器根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法還包括:網(wǎng)絡(luò)服務(wù)器獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息; 所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK為: 所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ; 所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表,確定所述應(yīng)用調(diào)用的SDK。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK之前,該方法還包括: 所述網(wǎng)絡(luò)服務(wù)器對所述應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則執(zhí)行后續(xù)流程;檢查不通過,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述網(wǎng)絡(luò)服務(wù)器根據(jù)所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK之前,`該方法還包括: 所述網(wǎng)絡(luò)服務(wù)器采用編譯器對所述應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,執(zhí)行后續(xù)流程;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,該方法還包括: 用戶在用戶設(shè)備上調(diào)試本地應(yīng)用時(shí),所述用戶設(shè)備與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同步。
6.根據(jù)權(quán)利要求1至5任一項(xiàng)所述的方法,其特征在于,該方法還包括: 網(wǎng)絡(luò)服務(wù)器接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息; 所述網(wǎng)絡(luò)服務(wù)器根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
7.—種網(wǎng)絡(luò)服務(wù)器,其特征在于,該網(wǎng)絡(luò)服務(wù)器包括:接收模塊、SDK確定模塊和分析模塊;其中, 所述接收模塊,用于接收來自用戶終端的應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼; 所述SDK確定模塊,用于根據(jù)所述接收模塊接收的所述應(yīng)用的源文件代碼確定所述應(yīng)用調(diào)用的SDK; 所述分析模塊,用于根據(jù)SDK被應(yīng)用調(diào)用的次數(shù)進(jìn)行SDK活躍度分析。
8.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)服務(wù)器,其特征在于,該網(wǎng)絡(luò)服務(wù)器還包括SDK接口表獲取模塊, 所述SDK接口表獲取模塊,用于獲取SDK接口表,所述SDK接口表包括SDK信息以及各SDK的接口信息;所述SDK確定模塊,具體用于對所述應(yīng)用的源文件代碼進(jìn)行掃描,獲取所述應(yīng)用調(diào)用的接口 ;之后,根據(jù)所述應(yīng)用調(diào)用的接口查找所述SDK接口表獲取模塊獲取的SDK接口表,確定所述應(yīng)用調(diào)用的SDK。
9.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)服務(wù)器,其特征在于,該網(wǎng)絡(luò)服務(wù)器還包括代碼安全檢查模塊, 所述代碼安全檢查模塊,用于對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行代碼安全檢查,檢查通過,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;檢查不通過,則向用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
10.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)服務(wù)器,其特征在于,該網(wǎng)絡(luò)服務(wù)器還包括編譯模塊, 所述編譯模塊,用于采用編譯器對所述接收模塊接收的應(yīng)用的源文件代碼進(jìn)行編譯,編譯成功,則通知SDK確定模塊確定所述應(yīng)用調(diào)用的SDK ;編譯失敗,則向所述用戶設(shè)備返回應(yīng)用發(fā)布失敗響應(yīng)。
11.根據(jù)權(quán)利要求10所述的網(wǎng)絡(luò)服務(wù)器,其特征在于, 所述編譯模塊,還用于在用戶設(shè)備調(diào)試本地應(yīng)用時(shí),與所述用戶設(shè)備進(jìn)行編譯器版本同步。
12.根據(jù)權(quán)利要求7至11任一項(xiàng)所述的網(wǎng)絡(luò)服務(wù)器,其特征在于,該網(wǎng)絡(luò)服務(wù)器還包括應(yīng)用測試模塊, 所述接收模塊,還用于接收來自用戶終端的應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息; 所述測試模塊,用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
13.—種SDK活躍度分析系統(tǒng),其特征在于,該系統(tǒng)包括用戶設(shè)備和網(wǎng)絡(luò)服務(wù)器;其中, 所述用戶設(shè)備,用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用發(fā)布請求,所述應(yīng)用發(fā)布請求至少攜帶需要發(fā)布的應(yīng)用的源文件代碼; 所述網(wǎng)絡(luò)服務(wù)器,為權(quán)利要求7至10任一項(xiàng)所述的網(wǎng)絡(luò)服務(wù)器。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于, 所述用戶設(shè)備,還用于在用戶調(diào)試本地應(yīng)用時(shí),與所述網(wǎng)絡(luò)服務(wù)器進(jìn)行編譯器版本同止/J/ O
15.根據(jù)權(quán)利要求13或14所述的系統(tǒng),其特征在于, 所述用戶設(shè)備,還用于根據(jù)用戶操作,向網(wǎng)絡(luò)服務(wù)器發(fā)送應(yīng)用測試請求,所述應(yīng)用測試請求至少攜帶需要測試的應(yīng)用信息; 所述網(wǎng)絡(luò)服務(wù)器,還用于根據(jù)預(yù)設(shè)的測試資源和/或測試次數(shù)對所述需要測試的應(yīng)用進(jìn)行測試。
【文檔編號】G06F9/44GK103823665SQ201210468557
【公開日】2014年5月28日 申請日期:2012年11月19日 優(yōu)先權(quán)日:2012年11月19日
【發(fā)明者】劉瑋, 牛亞文, 陳宇, 張勇 申請人:中國移動通信集團(tuán)公司