一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法及裝置。
【背景技術(shù)】
[0002]在計(jì)算機(jī)客戶端應(yīng)用領(lǐng)域中,很多時(shí)候需要對(duì)客戶端應(yīng)用的控件進(jìn)行埋點(diǎn),從而通過埋點(diǎn)的業(yè)務(wù)代碼,通過監(jiān)控而實(shí)現(xiàn)對(duì)這些控件的用戶數(shù)據(jù)進(jìn)行采集。
[0003]但是,在目前的埋點(diǎn)技術(shù)中,都是實(shí)行人工埋點(diǎn),也即是說(shuō),采用手工埋點(diǎn)的方式,先由數(shù)據(jù)分析師人工地定義客戶端應(yīng)用的埋點(diǎn)的名稱規(guī)范,然后,客戶端開發(fā)人員根據(jù)定義的規(guī)范,把相關(guān)的埋點(diǎn)寫入客戶端應(yīng)用的相關(guān)控件對(duì)應(yīng)的代碼里。最后,在用戶使用客戶端應(yīng)用時(shí)通過這些埋點(diǎn)代碼收集用戶行為數(shù)據(jù)?,F(xiàn)有技術(shù)采用的這種手工埋點(diǎn)的方式,有如下的缺點(diǎn):首先,這樣的方式很容易遺漏可以埋點(diǎn)的客戶端應(yīng)用的控件,定義的埋點(diǎn)名稱很難保證唯一性;其次,人工地進(jìn)行定義費(fèi)時(shí)費(fèi)力,浪費(fèi)人力成本;再次,當(dāng)客戶端應(yīng)用升級(jí)后,現(xiàn)有技術(shù)的方式需要重新定義埋點(diǎn)規(guī)范,從而導(dǎo)致需要人力的循環(huán)投入;再有,當(dāng)分析師人工定義埋點(diǎn)后,需要客戶端開發(fā)人員手工地把埋點(diǎn)寫入到相對(duì)應(yīng)的控件代碼中,這一環(huán)節(jié)也很容易出現(xiàn)遺漏,書寫錯(cuò)誤,寫入位置不正確等問題,并且在數(shù)據(jù)分析師對(duì)采集的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析時(shí)通過埋點(diǎn)數(shù)據(jù)很難聯(lián)系到對(duì)應(yīng)業(yè)務(wù)對(duì)象;現(xiàn)有技術(shù)的埋點(diǎn)方式最大的缺陷是每次埋點(diǎn)變更都需要重新發(fā)布客戶端應(yīng)用版本,完全達(dá)不到實(shí)時(shí)性要求。因此,需要一種自動(dòng)化的實(shí)時(shí)埋點(diǎn)系統(tǒng)來(lái)完成對(duì)控件的埋點(diǎn)從而進(jìn)行數(shù)據(jù)采集。
【發(fā)明內(nèi)容】
[0004]本申請(qǐng)的主要目的在于提供一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法及裝置,以解決現(xiàn)有技術(shù)存在的問題,其中:
[0005]根據(jù)本申請(qǐng)的一個(gè)方面的實(shí)施例,提供一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法,其特征在于,包括:基于來(lái)自客戶端應(yīng)用的截圖判斷請(qǐng)求,生成截圖標(biāo)志并將其向客戶端應(yīng)用發(fā)送,其中所述截圖標(biāo)志表示客戶端應(yīng)用的目標(biāo)頁(yè)面是否要被截圖,所述目標(biāo)頁(yè)面為所述客戶端應(yīng)用的被打開的當(dāng)前頁(yè)面;接收來(lái)自所述客戶端應(yīng)用的與所述目標(biāo)頁(yè)面相關(guān)的截圖數(shù)據(jù)集合,其中,該截圖數(shù)據(jù)集合包含控件截圖文件、頁(yè)面截圖文件以及頁(yè)面結(jié)構(gòu)信息,并且每一個(gè)控件截圖文件由控件的控件位置信息來(lái)標(biāo)識(shí);基于來(lái)自所述客戶端應(yīng)用的與所述目標(biāo)頁(yè)面相關(guān)的截圖數(shù)據(jù)集合,將所述目標(biāo)頁(yè)面在瀏覽器中渲染出來(lái);以及基于渲染出來(lái)的頁(yè)面中的控件的事件屬性,實(shí)時(shí)地對(duì)控件進(jìn)行埋點(diǎn)并記錄埋點(diǎn)配置信息。
[0006]根據(jù)本申請(qǐng)的另一個(gè)方面的實(shí)施例,提供一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的裝置,其特征在于,包括:標(biāo)志生成與發(fā)送模塊,用于基于來(lái)自客戶端應(yīng)用的截圖判斷請(qǐng)求,生成截圖標(biāo)志并將其向客戶端應(yīng)用發(fā)送,其中所述截圖標(biāo)志表示客戶端應(yīng)用的目標(biāo)頁(yè)面是否要被截圖,所述目標(biāo)頁(yè)面為所述客戶端應(yīng)用的被打開的當(dāng)前頁(yè)面;接收模塊,用于接收來(lái)自所述客戶端應(yīng)用的與所述目標(biāo)頁(yè)面相關(guān)的截圖數(shù)據(jù)集合,其中,該截圖數(shù)據(jù)集合包含控件截圖文件、頁(yè)面截圖文件以及頁(yè)面結(jié)構(gòu)信息,并且每一個(gè)控件截圖文件由控件的控件位置信息來(lái)標(biāo)識(shí);渲染模塊,用于基于來(lái)自所述客戶端應(yīng)用的與所述目標(biāo)頁(yè)面相關(guān)的截圖數(shù)據(jù)集合,將所述目標(biāo)頁(yè)面在瀏覽器中渲染出來(lái);以及埋點(diǎn)模塊,用于基于渲染出來(lái)的頁(yè)面中的控件的事件屬性,實(shí)時(shí)地對(duì)控件進(jìn)行埋點(diǎn)并記錄埋點(diǎn)配置信息。
[0007]與現(xiàn)有技術(shù)相比,根據(jù)本申請(qǐng)的技術(shù)方案,利用針對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法,可以對(duì)客戶端應(yīng)用進(jìn)行自動(dòng)埋點(diǎn),并且最終生成配置文件,從而可以利用該埋點(diǎn)配置文件對(duì)使用客戶端應(yīng)用時(shí)的用戶行為數(shù)據(jù)進(jìn)行收集??蛻舳藨?yīng)用的自動(dòng)化埋點(diǎn)方案可以是自動(dòng)化實(shí)時(shí)埋點(diǎn),對(duì)埋點(diǎn)的頁(yè)面自動(dòng)還原,分析師可以所見即所得的知道數(shù)據(jù)是在哪里采集的,數(shù)據(jù)的業(yè)務(wù)對(duì)象是什么。節(jié)省了分析師的人力成本,也節(jié)省了客戶端開發(fā)人員的人力成本,并且可以實(shí)時(shí)監(jiān)控客戶端,隨時(shí)埋點(diǎn),即時(shí)生效。另外,可以在客戶端應(yīng)用不必更新的情況下對(duì)埋點(diǎn)配置文件進(jìn)行更新,也即是說(shuō),配置文件的生成完全在服務(wù)器端進(jìn)行配置,在配置完成后實(shí)時(shí)推送到客戶端而無(wú)需對(duì)客戶端版本進(jìn)行整體更新。
【附圖說(shuō)明】
[0008]此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
[0009]圖1是本申請(qǐng)實(shí)施例的一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法的流程圖;
[0010]圖2是本申請(qǐng)優(yōu)選實(shí)施例的方法對(duì)控件信息進(jìn)行接收并對(duì)控件屬性進(jìn)行補(bǔ)充的步驟的具體流程圖;
[0011]圖3是本申請(qǐng)優(yōu)選實(shí)施例的方法利用自動(dòng)埋點(diǎn)生成的埋點(diǎn)配置文件對(duì)數(shù)據(jù)進(jìn)行采集的步驟的具體流程圖以及
[0012]圖4是本申請(qǐng)實(shí)施例的一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)以進(jìn)行數(shù)據(jù)收集的裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0013]本申請(qǐng)的主要思想在于,通過對(duì)目標(biāo)頁(yè)面進(jìn)行截圖以獲取控件截圖文件、頁(yè)面截圖文件并利用頁(yè)面結(jié)構(gòu)信息從而實(shí)現(xiàn)對(duì)控件的自動(dòng)埋點(diǎn)以及系統(tǒng)化命名并最終形成埋點(diǎn)配置文件從而利用所形成的埋點(diǎn)配置文件實(shí)現(xiàn)客戶端應(yīng)用的用戶數(shù)據(jù)收集。
[0014]為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,以下結(jié)合附圖及具體實(shí)施例,對(duì)本申請(qǐng)作進(jìn)一步地詳細(xì)說(shuō)明。
[0015]在以下描述中,對(duì)“ 一個(gè)實(shí)施例”、“實(shí)施例”、“ 一個(gè)示例”、“示例”等等的引用表明如此描述的實(shí)施例或示例可以包括特定特征、結(jié)構(gòu)、特性、性質(zhì)、元素或限度,但并非每個(gè)實(shí)施例或示例都必然包括特定特征、結(jié)構(gòu)、特性、性質(zhì)、元素或限度。另外,重復(fù)使用短語(yǔ)“在一個(gè)實(shí)施例中”雖然有可能是指代相同實(shí)施例,但并非必然指代相同實(shí)施例。
[0016]根據(jù)本申請(qǐng)的實(shí)施例,提供了一種對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法。參考圖1,圖1是本申請(qǐng)實(shí)施例的對(duì)客戶端應(yīng)用的控件進(jìn)行實(shí)時(shí)埋點(diǎn)的方法的流程圖。
[0017]如圖1所示,在步驟SlOl處,基于來(lái)自客戶端應(yīng)用的截圖判斷請(qǐng)求,生成截圖標(biāo)志并將其向客戶端應(yīng)用發(fā)送,其中截圖標(biāo)志表示客戶端應(yīng)用的目標(biāo)頁(yè)面是否要被截圖,目標(biāo)頁(yè)面為客戶端應(yīng)用的被打開的當(dāng)前頁(yè)面。
[0018]具體而言,為了進(jìn)行埋點(diǎn),客戶端應(yīng)用被開啟,從而呈現(xiàn)頁(yè)面,該頁(yè)面就是本申請(qǐng)中所稱的目標(biāo)頁(yè)面,也即是客戶端應(yīng)用被打開的當(dāng)前頁(yè)面。這時(shí),客戶端應(yīng)用可以向服務(wù)器發(fā)送截圖判斷請(qǐng)求。服務(wù)器接收該截圖判斷請(qǐng)求。然后,基于來(lái)自客戶端應(yīng)用的截圖判斷請(qǐng)求,生成截圖標(biāo)志并將該截圖標(biāo)志向客戶端應(yīng)用發(fā)送,其中該截圖標(biāo)志表示該目標(biāo)頁(yè)面是否要被截圖。客戶端應(yīng)用接收到服務(wù)器發(fā)送的截圖標(biāo)志后,將截圖標(biāo)志存儲(chǔ)在緩存中。更具體而言,服務(wù)器接收到該截圖判斷請(qǐng)求后,服務(wù)器判斷該頁(yè)面是否被截圖過,如果被截圖過,則生成一個(gè)截圖標(biāo)志,并且該截圖標(biāo)志的值例如可以是0,表示該頁(yè)面被截圖過;如果服務(wù)器判斷該頁(yè)面沒有被截圖過,則生成一個(gè)截圖標(biāo)志,并且該截圖標(biāo)志的值例如可以是1,表示該頁(yè)面沒有被截圖過,需要被截圖。更具體地,在本申請(qǐng)中所說(shuō)的該頁(yè)面需要被截圖表示被打開的當(dāng)前頁(yè)面的整體頁(yè)面要被截圖,同時(shí)在當(dāng)前頁(yè)面上的所有控件也要被截圖。
[0019]應(yīng)當(dāng)指出,所述截圖判斷請(qǐng)求可以在客戶端應(yīng)用的目標(biāo)頁(yè)面被打開時(shí)由客戶端應(yīng)用向服務(wù)器發(fā)送。
[0020]應(yīng)當(dāng)理解,目標(biāo)頁(yè)面可以是多個(gè)。例如,如果離開被打開的當(dāng)前頁(yè)面,進(jìn)入另一個(gè)頁(yè)面,則該另一個(gè)頁(yè)面就變成了被打開的當(dāng)前頁(yè)面,也即是變成目標(biāo)頁(yè)面。
[0021]在步驟S102處,接收來(lái)自客戶端應(yīng)用的與目標(biāo)頁(yè)面相關(guān)的截圖數(shù)據(jù)集合,該截圖數(shù)據(jù)集合可以包含控件截圖文件、頁(yè)面截圖文件以及頁(yè)面結(jié)構(gòu)信息,其中,每一個(gè)控件截圖文件可以由控件的控件位置信息來(lái)標(biāo)識(shí)。
[0022]具體而言,在離開被打開的當(dāng)前頁(yè)面時(shí),客戶端應(yīng)用根據(jù)緩存中的截圖標(biāo)志,對(duì)該頁(yè)面進(jìn)行截圖。也即是說(shuō),如果截圖標(biāo)志表示該目標(biāo)頁(yè)面未被截圖過,則對(duì)該頁(yè)面進(jìn)行截圖;如果截圖標(biāo)志表示該