本發(fā)明涉及通信技術領域,尤其涉及一種頁面來源統(tǒng)計方法及視圖控制器。
背景技術:
隨著移動app的迅猛發(fā)展,移動客戶端數(shù)據(jù)統(tǒng)計已經(jīng)變得越來越重要。通常企業(yè)會考慮到自身的移動app統(tǒng)計數(shù)據(jù)安全,會自己實現(xiàn)app的頁面來源統(tǒng)計,以達到相關的產(chǎn)品業(yè)務需求。
現(xiàn)有頁面來源統(tǒng)計大多是在某一頁面展現(xiàn)時,該頁面的視圖控制器生成當前訪問標識(id),并以此id來標識該頁面在本次展現(xiàn)時所代表的唯一值和狀態(tài)值。隨后,由該頁面切換進入到下一頁面時,所切換頁面的視圖控制器就會將被切換頁面的當前訪問id記錄為其來源頁面的id(也稱為父級id,通過每一頁面的視圖控制器傳遞父級id),并生成自身頁面的當前訪問id。
現(xiàn)有技術缺陷如下:當客戶端的app頁面結構較復雜時,如當某個頁面包含多個子頁面時,比如一個tab頁面下包含a、b兩個子頁面,通過tab頁面進入子頁面a,子頁面a的視圖控制器記錄的父級id為tabid,并同時生成子頁面a的當前訪問id,接著點擊子頁面b時,子頁面b記錄的父級id為子頁面a的當前訪問id,并同時生成子頁面b的當前訪問id,但是實際上子頁面b的父級id為tabid,按照現(xiàn)有的統(tǒng)計方法,與實際的頁面來源不符,造成統(tǒng)計錯誤。
技術實現(xiàn)要素:
本發(fā)明提供一種頁面來源統(tǒng)計方法及視圖控制器,以解決現(xiàn)有的頁面來源統(tǒng)計方法統(tǒng)計的頁面來源與實際的頁面來源不符,造成統(tǒng)計錯誤的問題。
第一方面,本發(fā)明提供一種頁面來源統(tǒng)計方法,包括:
檢測到當前訪問頁面發(fā)生頁面切換;
確定所切換的頁面是所述當前訪問頁面的多個子頁面中的一個子頁面時,對所述當前訪問頁面的兩個屬性標識id加上標識符,所述兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id;
將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,以使所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id;
記錄所述當前訪問頁面的兩個屬性id和所述當前訪問頁面的來源頁面的兩個屬性id。
進一步地,還包括:
確定所切換的頁面不是所述當前訪問頁面的多個子頁面中的一個子頁面時,將當所述前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器,以使所切換的頁面的視圖控制器將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的頁面的頁面訪問id。
進一步地,所述確定所切換的頁面是所述當前訪問頁面的多個子頁面中的一個子頁面,包括:
確定由所述當前訪問頁面切換到所述當前訪問頁面的多個子頁面中的一個子頁面;
或者,
確定由所述當前訪問頁面中的一個子頁面切換到另一個子頁面。
進一步地,所述檢測到當前訪問頁面發(fā)生頁面切換之前,或者檢測到所述當前訪問頁面被訪問時,還包括:
生成所述當前訪問頁面的頁面訪問id。
進一步地,所述表征當前訪問頁面的唯一id為所述當前訪問頁面的頁面初始化id,所述方法還包括:
在所述當前訪問頁面頁面初始化時,生成并保存所述當前訪問頁面的頁面初始化id。
第二方面,本發(fā)明提供一種視圖控制器,包括:
檢測模塊,用于檢測到當前訪問頁面發(fā)生頁面切換;
確定模塊,用于確定所切換的頁面是否是所述當前訪問頁面的多個子頁面中的一個子頁面;
處理模塊,用于在所述確定模塊確定所切換的頁面是所述當前訪問頁面的多個子頁面中的一個子頁面時,對所述當前訪問頁面的兩個屬性標識id加上標識符,所述兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id;
發(fā)送模塊,用于將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,以使所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id;
記錄模塊,用于記錄所述當前訪問頁面的兩個屬性id和所述當前訪問頁面的來源頁面的兩個屬性id。
進一步地,所述發(fā)送模塊還用于:
在所述確定模塊確定所切換的頁面不是所述當前訪問頁面的多個子頁面中的一個子頁面時,將當所述前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器,以使所切換的頁面的視圖控制器將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的頁面的頁面訪問id。
進一步地,所述確定模塊具體用于:
確定由所述當前訪問頁面切換到所述當前訪問頁面的多個子頁面中的一個子頁面;
或者,
確定由所述當前訪問頁面中的一個子頁面切換到另一個子頁面。
進一步地,所述處理模塊還用于:
在所述檢測模塊檢測到當前訪問頁面發(fā)生頁面切換之前,或者檢測到所述當前訪問頁面被訪問時,生成所述當前訪問頁面的頁面訪問id。
進一步地,所述表征當前訪問頁面的唯一id為所述當前訪問頁面的頁面初始化id,所述處理模塊還用于:
在所述當前訪問頁面頁面初始化時,生成并保存所述當前訪問頁面的頁面初始化id。
本發(fā)明提供的頁面來源統(tǒng)計方法及視圖控制器,通過檢測到當前訪問頁面發(fā)生頁面切換后,首先確定所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面,接著對當前訪問頁面的兩個屬性id加上標識符,然后將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,以使所切換的子 頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,將接收到的其它子頁面發(fā)送的兩個屬性id忽略,同時生成所切換的子頁面的頁面訪問id。最后記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。這樣所切換的子頁面記錄的來源頁面的兩個屬性id就是正確的,與實際來源相符合。從而解決了現(xiàn)有的頁面來源統(tǒng)計方法在統(tǒng)計復雜頁面時統(tǒng)計的頁面來源與實際的頁面來源不符,會造成統(tǒng)計錯誤的問題。
附圖說明
為了更清楚地說明本發(fā)明或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明頁面來源統(tǒng)計方法實施例一的流程圖;
圖2為本發(fā)明頁面來源統(tǒng)計方法實施例二的流程圖;
圖3為本發(fā)明頁面訪問路徑確定方法實施例一的流程圖;
圖4為本發(fā)明視圖控制器實施例一的結構示意圖。
具體實施方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明中的附圖,對本發(fā)明中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明提供的頁面來源統(tǒng)計方法及視圖控制器,主要用于解決現(xiàn)有的頁面來源統(tǒng)計方法在統(tǒng)計復雜頁面時統(tǒng)計的頁面來源與實際的頁面來源不符,會造成統(tǒng)計錯誤的問題,且還可以快速地和頁面的日志統(tǒng)計系統(tǒng)對接,實現(xiàn)頁面訪問路徑的確定,使得確定出的頁面訪問路徑與實際路徑相符合,進一步使得頁面訪問路徑確定準確。下面結合附圖詳細說明本發(fā)明的處理流程。
圖1為本發(fā)明頁面來源統(tǒng)計方法實施例一的流程圖,如圖1所示,本實 施例的方法可以包括:
s101、檢測到當前訪問頁面發(fā)生頁面切換。
具體地,發(fā)生頁面切換是指從當前訪問頁面進入下一頁面。在進行頁面統(tǒng)計時,可以是在檢測到當前訪問頁面發(fā)生頁面切換之前,生成當前訪問頁面的頁面訪問id,或者也可以是檢測到當前頁面被訪問時,生成當前訪問頁面的頁面訪問id。
s102、確定所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面時,對當前訪問頁面的兩個屬性id加上標識符,兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id。
具體來說,本實施例中主要是針對復雜頁面(包括多個子頁面)所做的處理,頁面自身的統(tǒng)計工具(如視圖控制器)確定所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面,具體可以是確定出由當前訪問頁面切換到當前訪問頁面的多個子頁面中的一個子頁面,或者,確定由當前訪問頁面中的一個子頁面切換到另一個子頁面。
其中,兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id,表征當前訪問頁面的唯一id可以是當前訪問頁面的頁面初始化id,在當前訪問頁面頁面初始化時,由當前訪問頁面的視圖控制器生成并保存。對于每一頁面來說,在頁面初始化時由頁面的視圖控制器生成頁面初始化id并保存,只要生成就不會更改。頁面訪問id是頁面每次被訪問(或者說每次展現(xiàn))時生成的id,與訪問時間有關,只要在頁面某次被訪問(展現(xiàn))的生命周期中,便不會更改。具體可以是在檢測到當前訪問頁面發(fā)生頁面切換之前,生成當前訪問頁面的頁面訪問id,或者也可以是檢測到當前頁面被訪問,即生成當前訪問頁面的頁面訪問id。
具體地,當確定出所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面時,即就是確定出當前訪問頁面是包含了多個子頁面的復雜頁面,接著對當前訪問頁面的兩個屬性id加上標識符,也就是進行特殊的標記,以使復雜頁面?zhèn)鬟f自身的兩個屬性id給其子頁面時,子頁面可以識別。
需要說明的是,本發(fā)明所說的每一頁面的視圖控制器其實就是每一頁面的頁面統(tǒng)計裝置,或稱為頁面統(tǒng)計工具。
s103、將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制 器,以使所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id。
具體來說,對于復雜頁面下的一個子頁面切換到另一子頁面時,所切換的子頁面會接收到被切換子頁面發(fā)送的兩個屬性id和該復雜頁面發(fā)送的兩個屬性id,該復雜頁面發(fā)送的兩個屬性id攜帶有標識符,所切換的子頁面即將攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,將接收到的被切換子頁面發(fā)送的兩個屬性id忽略,同時生成所切換的子頁面的頁面訪問id。這樣所切換的子頁面記錄的來源頁面的兩個屬性id就是正確的,與實際來源相符合。
s104、記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。
對于跟頁面來說,當前訪問頁面的來源頁面的兩個屬性id為空,其只需要記錄自身的兩個屬性id。
本實施例提供的頁面來源統(tǒng)計方法,通過檢測到當前訪問頁面發(fā)生頁面切換后,首先確定所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面,接著對當前訪問頁面的兩個屬性id加上標識符,然后將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,以使所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,將接收到的其它子頁面發(fā)送的兩個屬性id忽略,同時生成所切換的子頁面的頁面訪問id。最后記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。這樣所切換的子頁面記錄的來源頁面的兩個屬性id就是正確的,與實際來源相符合。從而解決了現(xiàn)有的頁面來源統(tǒng)計方法在統(tǒng)計復雜頁面時統(tǒng)計的頁面來源與實際的頁面來源不符,會造成統(tǒng)計錯誤的問題。
圖1所示的實施例主要是針對復雜頁面所做的處理,要對不同類型的頁面(復雜頁面和沒有子頁面的頁面)都適用,接下來結合圖2詳細說明另一實施例的處理過程。
圖2為本發(fā)明頁面來源統(tǒng)計方法實施例二的流程圖,如圖2所示,本實施例的方法可以包括:
s201、檢測到當前訪問頁面發(fā)生頁面切換。
具體地,在進行頁面統(tǒng)計時,可以是在檢測到當前訪問頁面發(fā)生頁面切換之前,生成當前訪問頁面的頁面訪問id,或者也可以是檢測到當前訪問頁面被訪問時,即生成當前訪問頁面的頁面訪問id。
s202、確定所切換的頁面是否是當前訪問頁面的多個子頁面中的一個子頁面。若是,執(zhí)行s203,若否,執(zhí)行s204。
s203、對當前訪問頁面的兩個屬性id加上標識符,兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id。
其中,表征當前訪問頁面的唯一id為當前訪問頁面的頁面初始化id,對于每一頁面來說,在頁面初始化時由頁面的視圖控制器生成頁面初始化id并保存,只要生成就不會更改。
s205、將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器。
s204、將當前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器。
s206、記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。
s207、所切換的子頁面的視圖控制器確定是否接收到攜帶標識符的兩個屬性id,若是,執(zhí)行s208,若否,執(zhí)行s209。
s208、所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id。
s209、所切換的子頁面的視圖控制器將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id。
本實施例提供的頁面來源統(tǒng)計方法,通過檢測到當前訪問頁面發(fā)生頁面切換后,首先確定所切換的頁面是否是當前訪問頁面的多個子頁面中的一個子頁面,若是,對當前訪問頁面的兩個屬性id加上標識符,然后將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,若否,則直接將當前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器,使得所切換的子頁面的視圖控制器在確定出接收到攜帶標識符的兩個屬性id時,將攜帶標識 符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,若否,則將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id。最后記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id,從而解決了現(xiàn)有的頁面來源統(tǒng)計方法在統(tǒng)計復雜頁面時統(tǒng)計的頁面來源與實際的頁面來源不符,會造成統(tǒng)計錯誤的問題。且對于不同類型的頁面都適用。
上述圖1和圖2所示的頁面來源統(tǒng)計方法,均可以快速地和頁面的日志統(tǒng)計系統(tǒng)對接,實現(xiàn)頁面訪問路徑的確定,使得確定出的頁面訪問路徑與實際路徑相符合,實現(xiàn)頁面訪問路徑確定的準確性。下面結合圖3詳細說明。
圖3為本發(fā)明頁面訪問路徑確定方法實施例一的流程圖,如圖3所示,本實施例的方法可以包括:
s301、獲取當前記錄的各網(wǎng)絡日志條目。
具體地,記錄網(wǎng)絡日志條目時,具體包括:
s3011、在每一頁面的頁面初始化時,生成并存儲每一頁面的頁面初始化id。
s3012、檢測到當前頁面被訪問時,生成當前訪問頁面的頁面訪問id。
接著執(zhí)行圖2所示的s202-s204,所切換的子頁面相應執(zhí)行s208-s209。
s3013、在本次訪問頁面對應的網(wǎng)絡日志條目中,記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。
s302、基于各網(wǎng)絡日志條目中記錄的來源頁面的兩個屬性id和自身頁面的兩個屬性id,確定出滿足設定關系的第一網(wǎng)絡日志條目和第二網(wǎng)絡日志條目,其中,設定關系為第一網(wǎng)絡日志條目中的頁面初始化id與第二網(wǎng)絡日志條目中的來源頁面的頁面初始化id相同。
s303、確定頁面訪問路徑為從第一網(wǎng)絡日志條目中的頁面初始化id表征的頁面到第二網(wǎng)絡日志條目中的頁面初始化id表征的頁面。
圖3所示的是確定訪問兩個頁面的頁面訪問路徑,對于訪問了多個頁面的頁面訪問路徑的確定,本發(fā)明也是適用的,原理類似,此處不再贅述。
本實施例提供的頁面訪問路徑確定方法,結合本發(fā)明提供的頁面來源統(tǒng)計方法進行頁面訪問路徑的確定,使得確定出的頁面訪問路徑與實際路徑相符合,實現(xiàn)頁面訪問路徑確定的準確性。
圖4為本發(fā)明視圖控制器實施例一的結構示意圖,如圖4所示,本實施例的視圖控制器可以包括:檢測模塊11、確定模塊12、處理模塊13、發(fā)送模塊14和記錄模塊15,其中,檢測模塊11用于檢測到當前訪問頁面發(fā)生頁面切換,確定模塊12用于確定所切換的頁面是否是當前訪問頁面的多個子頁面中的一個子頁面,處理模塊13用于在確定模塊確定所切換的頁面是當前訪問頁面的多個子頁面中的一個子頁面時,對當前訪問頁面的兩個屬性標識id加上標識符,兩個屬性id包括表征當前訪問頁面的唯一id和頁面訪問id,發(fā)送模塊14用于將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,以使所切換的子頁面的視圖控制器將接收到的攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id,記錄模塊15用于記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id。
進一步地,發(fā)送模塊14還用于:在確定模塊確定所切換的頁面不是當前訪問頁面的多個子頁面中的一個子頁面時,將當前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器,以使所切換的頁面的視圖控制器將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的頁面的頁面訪問id。
其中,確定模塊12具體用于:確定由當前訪問頁面切換到當前訪問頁面的多個子頁面中的一個子頁面?;蛘撸_定由當前訪問頁面中的一個子頁面切換到另一個子頁面。
進一步地,處理模塊13還用于:在檢測模塊11檢測到當前訪問頁面發(fā)生頁面切換之前,生成當前訪問頁面的頁面訪問id。
進一步地,表征當前訪問頁面的唯一id為當前訪問頁面的頁面初始化id,處理模塊13還用于:在當前訪問頁面頁面初始化時,生成并保存當前訪問頁面的頁面初始化id。
本實施例的裝置,可以用于執(zhí)行圖1或圖2所示方法實施例的技術方案,其實現(xiàn)原理類似,此處不再贅述。
本實施例提供的視圖控制器,通過檢測模塊檢測到當前訪問頁面發(fā)生頁面切換后,首先確定模塊確定所切換的頁面是否是當前訪問頁面的多個子頁面中的一個子頁面,若是,處理模塊對當前訪問頁面的兩個屬性id加上標識 符,然后發(fā)送模塊將攜帶標識符的兩個屬性id發(fā)送給所切換的子頁面的視圖控制器,若否,則發(fā)送模塊直接將當前訪問頁面的兩個屬性id發(fā)送給所切換的頁面的視圖控制器,使得所切換的子頁面的視圖控制器在確定出接收到攜帶標識符的兩個屬性id時,將攜帶標識符的兩個屬性id記錄為來源頁面的相應的兩個屬性id,若否,則將接收到的兩個屬性id記錄為來源頁面的相應的兩個屬性id,同時生成所切換的子頁面的頁面訪問id。最后記錄模塊記錄當前訪問頁面的兩個屬性id和當前訪問頁面的來源頁面的兩個屬性id,從而解決了現(xiàn)有的頁面來源統(tǒng)計方法在統(tǒng)計復雜頁面時統(tǒng)計的頁面來源與實際的頁面來源不符,會造成統(tǒng)計錯誤的問題。且對于不同類型的頁面都適用。
本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍。