本發(fā)明涉及互聯(lián)網技術領域,具體涉及一種生成應用推廣安裝包的方法和服務器。
背景技術:
隨著移動互聯(lián)網技術的不斷發(fā)展,各類適用于移動終端的應用軟件越來越多,極大的方便了和豐富了人們的生活。以手機助手平臺中的安卓應用為例,手機助手平臺中的安卓應用安裝包所使用的是廠商的原始安裝包。然而,由于原始安裝包中僅有應用信息數(shù)據(jù)而無手機助手平臺的相關信息,使得原始安裝包在從應用推廣方到用戶方的流轉過程中無法識別應用推廣方,即無法獲知每個在移動終端被安裝的應用是通過哪個應用推廣方的推廣而使用戶下載的,無法獲知各應用推廣方的推廣效果,進而無法和應用推廣方做統(tǒng)計結算等流程,所以不能將應用交給第三方應用推廣方進行推廣。因此,原始應用安裝包極大制約了應用軟件的推廣。
因此,目前需要本領域技術人員迫切解決的一個技術問題就是:如何能向第三方應用推廣方提供包含應用推廣方的標識信息的安裝包。
技術實現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的生成應用推廣安裝包的方法和服務器。
依據(jù)本發(fā)明的一個方面,提供了一種生成應用推廣安裝包的方法,其中,該方法包括:
接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息;
根據(jù)所述應用的標識信息,獲取相應應用的原始包;
根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推 廣安裝包;
根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值;
將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
可選地,所述根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包包括:
在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包;
對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
可選地,所述根據(jù)所述相應應用的原始包生成中間校驗值包括:計算所述相應應用的原始包的MD5值作為中間校驗值;
所述根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值:計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
可選地,所述計算所述相應應用的原始包的MD5值作為中間校驗值包括:
按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將各數(shù)據(jù)段的MD5值疊加得到中間校驗值。
可選地,所述根據(jù)所述相應應用的原始包生成中間校驗值包括:計算所述相應應用的原始包的SHA1值作為中間校驗值;
所述根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值:計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
可選地,所述計算所述相應應用的原始包的SHA1值作為中間校驗值包括:
按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段 的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。
可選地,該方法進一步包括:將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同下發(fā)給所述應用推廣方。
可選地,該方法進一步包括:
接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
依據(jù)本發(fā)明的另一個方面,還提供了一種生成應用推廣安裝包的服務器,其中,該服務器包括:
接收單元,適于接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息;
安裝包生成單元,適于根據(jù)所述應用的標識信息,獲取相應應用的原始包;根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包;
校驗值生成單元,適于根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值;
下發(fā)單元,適于將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
可選地,所述安裝包生成單元,適于在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包;對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
可選地,所述校驗值生成單元,適于計算所述相應應用的原始包的MD5值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
可選地,所述校驗值生成單元,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將各數(shù)據(jù)段的MD5值疊加 得到中間校驗值。
可選地,所述校驗值生成單元,適于計算所述相應應用的原始包的SHA1值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
可選地,所述校驗值生成單元,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。
可選地,所述下發(fā)單元,進一步適于將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同返回給所述應用推廣方。
可選地,所述接收單元,進一步適于接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
由上述可知,本發(fā)明提供的技術方案根據(jù)應用推廣方發(fā)送的應用請求消息,在獲取相應應用的原始包的基礎上進一步生成包含應用推廣方的標識信息的應用推廣安裝包,并生成對應于該應用推廣安裝包的校驗值,將應用推廣安裝包機器校驗值下發(fā)給應用推廣方,使得該應用推廣方可以根據(jù)校驗值對應用推廣安裝包的正確性和安全性進行校驗,進而再推廣給用戶。依據(jù)本方案,包含應用推廣方的標識信息的應用推廣安裝包在流轉過程中,無論是在應用推廣方還是被下載到不同的客戶端,都能夠依據(jù)其所包含的應用推廣方的標識信息識別出相應應用的推廣渠道,進而可以統(tǒng)計出不同的應用推廣方對相應應用的推廣效果,據(jù)此通過相應的推廣渠道的調整可以進一步提高應用的整體推廣效果,符合廠商對于應用的推廣需求。
上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本 領域普通技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明一個實施例的一種生成應用推廣安裝包的方法的流程圖;
圖2示出了根據(jù)本發(fā)明一個實施例的一種生成應用推廣安裝包的服務器的示意圖。
具體實施方式
下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
圖1示出了根據(jù)本發(fā)明一個實施例的一種生成應用推廣安裝包的方法的流程圖。如圖1所示,該方法包括:
步驟S110:接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息。
其中,所述應用推廣方是集成多種應用的應用推廣平臺,用戶可以通過該應用推廣平臺獲取到不同廠商開發(fā)的不同應用。本步驟所接收的應用推廣方發(fā)送的應用請求消息是指:接收應用推廣方根據(jù)推廣需求發(fā)送的應用請求消息,該應用請求消息中包含的應用的標識信息是所述應用推廣方待推廣的應用的標識信息,是相應應用的唯一標識,而應用推廣方的標識信息是該應用推廣方的唯一標識。
步驟S120:根據(jù)所述應用的標識信息,獲取相應應用的原始包。
本步驟以應用的標識信息為索引,從預先配置應用原始包的系統(tǒng)中獲取相應應用的原始包,例如,預先將各應用的原始包存儲在內容分發(fā)網絡(CDN)服務器中,本步驟通過linux的shell腳本將相應應用的原始包從CDN服務器中下載下來,當然,也可以是向CDN服務器發(fā)送包含應用的標識信息的請求,接收CDN服務器返回的相應應用的原始包。
步驟S130:根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包。
步驟S140:根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值。
步驟S150:將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
可見,圖1所示的方法根據(jù)應用推廣方發(fā)送的應用請求消息,在獲取相應應用的原始包的基礎上進一步生成包含應用推廣方的標識信息的應用推廣安裝包,并生成對應于該應用推廣安裝包的校驗值,將應用推廣安裝包機器校驗值下發(fā)給應用推廣方,使得該應用推廣方可以根據(jù)校驗值對應用推廣安裝包的正確性和安全性進行校驗,進而再推廣給用戶。依據(jù)本方案,包含應用推廣方的標識信息的應用推廣安裝包在流轉過程中,無論是在應用推廣方還是被下載到不同的客戶端,都能夠依據(jù)其所包含的應用推廣方的標識信息識別出相應應用的推廣渠道,進而可以統(tǒng)計出不同的應用推廣方對相應應用的推廣效果,據(jù)此通過相應的推廣渠道的調整可以進一步提高應用的整體推廣效果,符合廠商對于應用的推廣需求。
在本發(fā)明的一個實施例中,步驟S130根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包包括:在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包SDK;對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
其中,在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包SDK的目的是:對于生成的應用推廣安裝包,當在終端設備上安裝該應用推廣安裝包時,需要利用所述軟件開發(fā)工具包SDK識別出所述應用推廣安裝包中的相應應用的原始數(shù)據(jù)部分,以執(zhí)行所述原始數(shù)據(jù)部分實現(xiàn)相應應用的相關功能。當在相應應用的原始包中接入 所述SDK后,所屬相應應用的原始包的文件中記錄有所述SDK的版本號。
在本發(fā)明的一個實施例中,步驟S140根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值包括:計算所述相應應用的原始包的MD5值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
其中,計算相應應用的原始包的MD5作為中間校驗值的過程可以基于OpenSSL開發(fā)計算MD5中間值的PHP擴展應用;計算所述中間校驗值和所述應用推廣方的標識信息的MD5值可以是:實時計算中間校驗值和應用推廣方的標識信息對應的字符串聯(lián)和后的MD5值。
具體地,上述計算所述相應應用的原始包的MD5值作為中間校驗值包括:按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將各數(shù)據(jù)段的MD5值疊加得到中間校驗值。在本實施例這種分段疊加計算MD5的場景下,需要對中間校驗值進行存儲處理,相對于大量的計算,存儲的代價非常低。
在本發(fā)明的另一個實施例中,步驟S140根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值包括:計算所述相應應用的原始包的SHA1值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
具體地,上述計算所述相應應用的原始包的SHA1值作為中間校驗值包括:按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。在本實施例這種分段疊加計算SHA1的場景下,需要對中間校驗值進行存儲處理,相對于大量的計算,存儲的代價非常低。
進一步地,還可以連同應用推廣安裝包一并將該應用推廣安裝包的關聯(lián)信息發(fā)送至應用推廣方,使得用戶通過應用推廣方瀏覽到該應用推廣安裝包時,還能一并獲知該應用推廣安裝包的關聯(lián)信息。則在本發(fā)明的一個實施例中,圖1所示的方法還包括:將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名 稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同下發(fā)給所述應用推廣方。
進一步地,在本發(fā)明的一個實施例中,圖1所示的方法還包括:接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
例如,應用a在推廣平臺b中上線進行推廣,則將應用a的應用推廣安裝包下發(fā)至推廣平臺b,應用a的應用推廣安裝包中包括應用a的原始包對應的數(shù)據(jù)和推廣平臺b的標識信息對應的數(shù)據(jù),其中應用a的原始包對應的數(shù)據(jù)尾部續(xù)接了推廣平臺b的標識信息對應的數(shù)據(jù),且該應用推廣安裝包中接入了用于讀取尾部數(shù)據(jù)的SDK,用戶m從推廣平臺b上將該應用a的應用推廣安裝包下載到自己的手機上,在手機上解壓安裝該應用a的應用推廣安裝包,在安裝的過程中,利用所述SDK識別出應用a的原始包對應的數(shù)據(jù)并執(zhí)行安裝,在用戶m的手機上安裝應用a客戶端,以及,利用所述SDK識別出了推廣平臺b的標識信息放入應用a客戶端的指定文件路徑下。響應于用戶m使用應用a客戶端的操作,該應用a客戶端從指定文件路徑下掃描出推廣平臺b的標識信息并上傳至服務器作為應用a客戶端的安裝回饋。同理,對于通過任意推廣平臺推廣的應用a的應用推廣安裝包,所有下載并安裝該應用a的應用推廣安裝包的用戶的終端設備上的應用a客戶端均會將相應的應用推廣方的標識信息進行回饋,則服務器側能夠獲知應用a的所有被下載安裝的渠道,進一步可以對各應用推廣方的推廣效果進行統(tǒng)計,查看應用a在哪個應用推廣方的推廣效果最好,其原因是什么,以對今后的應用的發(fā)布和推廣提供參考。
圖2示出了根據(jù)本發(fā)明一個實施例的一種生成應用推廣安裝包的服務器的示意圖。如圖2所示,該生成應用推廣安裝包的服務器200包括:
接收單元210,適于接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息。
安裝包生成單元220,適于根據(jù)所述應用的標識信息,獲取相應應用的原始包;根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包。
校驗值生成單元230,適于根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值。
下發(fā)單元240,適于將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
可見,圖2所示的服務器根據(jù)應用推廣方發(fā)送的應用請求消息,在獲取相應應用的原始包的基礎上進一步生成包含應用推廣方的標識信息的應用推廣安裝包,并生成對應于該應用推廣安裝包的校驗值,將應用推廣安裝包機器校驗值下發(fā)給應用推廣方,使得該應用推廣方可以根據(jù)校驗值對應用推廣安裝包的正確性和安全性進行校驗,進而再推廣給用戶。依據(jù)本方案,包含應用推廣方的標識信息的應用推廣安裝包在流轉過程中,無論是在應用推廣方還是被下載到不同的客戶端,都能夠依據(jù)其所包含的應用推廣方的標識信息識別出相應應用的推廣渠道,進而可以統(tǒng)計出不同的應用推廣方對相應應用的推廣效果,據(jù)此通過相應的推廣渠道的調整可以進一步提高應用的整體推廣效果,符合廠商對于應用的推廣需求。
進一步地,在本發(fā)明的一個實施例中,所述接收單元210,還適于接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
在本發(fā)明的一個實施例中,所述安裝包生成單元220,適于在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包;對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
在本發(fā)明的一個實施例中,所述校驗值生成單元230,適于計算所述相應應用的原始包的MD5值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
在本發(fā)明的一個實施例中,所述校驗值生成單元230,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將 各數(shù)據(jù)段的MD5值疊加得到中間校驗值。
在本發(fā)明的一個實施例中,所述校驗值生成單元230,適于計算所述相應應用的原始包的SHA1值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
在本發(fā)明的一個實施例中,所述校驗值生成單元230,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。
進一步地,在本發(fā)明的一個實施例中,所述下發(fā)單元240還適于將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同返回給所述應用推廣方。
在本發(fā)明的一個實施例中,接收單元210,進一步適于接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
需要說明的是,圖2所示服務器的各實施例與圖1所示方法的各實施例對應相同,上文中已有詳細說明,在此不再贅述。
綜上所述,本發(fā)明提供的技術方案根據(jù)應用推廣方發(fā)送的應用請求消息,在獲取相應應用的原始包的基礎上進一步生成包含應用推廣方的標識信息的應用推廣安裝包,并生成對應于該應用推廣安裝包的校驗值,將應用推廣安裝包機器校驗值下發(fā)給應用推廣方,使得該應用推廣方可以根據(jù)校驗值對應用推廣安裝包的正確性和安全性進行校驗,進而再推廣給用戶。依據(jù)本方案,包含應用推廣方的標識信息的應用推廣安裝包在流轉過程中,無論是在應用推廣方還是被下載到不同的客戶端,都能夠依據(jù)其所包含的應用推廣方的標識信息識別出相應應用的推廣渠道,進而可以統(tǒng)計出不同的應用推廣方對相應應用的推廣效果,據(jù)此通過相應的推廣渠道的調整可以進一步提高應用的整體推廣效果,符合廠商對于應用的推廣需求。
需要說明的是:
在此提供的算法和顯示不與任何特定計算機、虛擬裝置或者其它設備固有相關。各種通用裝置也可以與基于在此的示教一起使用。根據(jù)上面的描述, 構造這類裝置所要求的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權利要求書由此明確地并入該具體實施方式,其中每個權利要求本身都作為本發(fā)明的單獨實施例。
本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理 器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的一種生成應用推廣安裝包的服務器中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
本發(fā)明公開了A1、一種生成應用推廣安裝包的方法,其中,該方法包括:
接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息;
根據(jù)所述應用的標識信息,獲取相應應用的原始包;
根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包;
根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值;
將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
A2、如A1所述的方法,其中,所述根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包包括:
在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包;
對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
A3、如A1所述的方法,其中,
所述根據(jù)所述相應應用的原始包生成中間校驗值包括:計算所述相應應用的原始包的MD5值作為中間校驗值;
所述根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值包括:計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
A4、如A3所述的方法,其中,所述計算所述相應應用的原始包的MD5值作為中間校驗值包括:
按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將各數(shù)據(jù)段的MD5值疊加得到中間校驗值。
A5、如A1所述的方法,其中,
所述根據(jù)所述相應應用的原始包生成中間校驗值包括:計算所述相應應用的原始包的SHA1值作為中間校驗值;
所述根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值包括:計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
A6、如A5所述的方法,其中,所述計算所述相應應用的原始包的SHA1值作為中間校驗值包括:
按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。
A7、如A1所述的方法,其中,該方法進一步包括:將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同下發(fā)給所述應用推廣方。
A8、如A1所述的方法,其中,該方法進一步包括:
接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。
本發(fā)明還公開了B9、一種生成應用推廣安裝包的服務器,其中,該服務器包括:
接收單元,適于接收應用推廣方發(fā)送的應用請求消息,所述應用請求消息中包括:應用的標識信息,應用推廣方的標識信息;
安裝包生成單元,適于根據(jù)所述應用的標識信息,獲取相應應用的原始包;根據(jù)所述相應應用的原始包與所述應用推廣方的標識信息,生成應用推廣安裝包;
校驗值生成單元,適于根據(jù)所述相應應用的原始包生成中間校驗值,根據(jù)所生成的中間校驗值與所述應用推廣方的標識信息,生成所述應用推廣安裝包的校驗值;
下發(fā)單元,適于將所述應用推廣安裝包及其校驗值下發(fā)給所述應用推廣方,以供所述應用推廣方對所述應用推廣安裝包進行校驗并推廣給用戶。
B10、如B9所述的服務器,其中,
所述安裝包生成單元,適于在所述相應應用的原始包中接入用于讀取所述相應應用的原始包的頭數(shù)據(jù)和尾數(shù)據(jù)的軟件開發(fā)工具包;對所述相應應用的原始包和所述應用推廣方的標識信息一同編譯生成應用推廣安裝包;或者,將所述應用推廣方的標識信息對應的數(shù)據(jù)續(xù)接在所述相應應用的原始包的數(shù)據(jù)的首部和/或尾部,打包生成應用推廣安裝包。
B11、如B9所述的服務器,其中,
所述校驗值生成單元,適于計算所述相應應用的原始包的MD5值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的MD5值,作為所述應用推廣安裝包的校驗值。
B12、如B11所述的服務器,其中,
所述校驗值生成單元,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的MD5值,將各數(shù)據(jù)段的MD5值疊加得到中間校驗值。
B13、如B9所述的服務器,其中,
所述校驗值生成單元,適于計算所述相應應用的原始包的SHA1值作為中間校驗值;計算所述中間校驗值和所述應用推廣方的標識信息的SHA1值,作為所述應用推廣安裝包的校驗值。
B14、如B13所述的服務器,其中,
所述校驗值生成單元,適于按照預設規(guī)則將所述相應應用的原始包的數(shù)據(jù)分為多段,計算各數(shù)據(jù)段的SHA1值,將各數(shù)據(jù)段的SHA1值疊加得到中間校驗值。
B15、如B9所述的服務器,其中,
所述下發(fā)單元,進一步適于將所述應用推廣安裝包的數(shù)據(jù)長度、安裝包名稱、對應的應用名稱、對應的應用圖標中的一個或多個與所述應用推廣安裝包及其校驗值一同返回給所述應用推廣方。
B16、如B9所述的服務器,其中,
所述接收單元,進一步適于接收應用客戶端發(fā)送的應用推廣回饋消息,所述應用推廣回饋消息中包括:所述應用客戶端對應的應用推廣安裝包中攜帶的應用推廣方的標識信息。