在小程序後臺,微信已經提供了強大的數據分析功能,包括實時統計、訪問分析、來源分析和用戶畫像功能,能夠說對通常的數據分析已經徹底足夠了,但有時應用須要作一些更加精準的數據分析,好比具體到某一個頁面的分享,頁面中某一個button的點擊等,這時候就須要用到自定義分析功能。json
引用下官方文檔:小程序
自定義分析支持靈活多維和近實時的用戶行爲分析,能夠經過自定義上報,對用戶在小程序內的行爲作精細化跟蹤,知足頁面訪問等標準統計之外的個性化分析需求。
click 點擊時觸發 enterPage 進入頁面時觸發,包括新開、後退、切換到前臺都屬於進入頁面 leavePage 離開頁面時觸發,包括離開、切換到後臺都屬於離開頁面 pageLoad 新開頁面時觸發,即第一次進入頁面 pageUnload 回收頁面時觸發 pullDownRefresh 下拉刷新時觸發 launch 加載小程序時觸發 background 切換到後臺觸發 foreground 切換到前臺觸發 share 右上角菜單分享 switchTab 調用switchTab接口切換頁面時觸發
app.json
中配置的頁面路徑同樣data
中的數據名稱電商類小程序中,用戶會有一個點擊商品添加到購物車的動做,咱們能夠對這個動做進行數據分析,如下是填寫配置
的方式:數組
這個例子中,用一個動做上報「加入購物車」事件。微信
詳細說一下字段值,他有以下規則:app
除此以外,還能夠填寫一些提供的系統屬性,以「$」開頭,目前支持如下屬性:函數
$PAGE_TIME
用戶從進入本頁面到當前的時間(觸發action的時間點)$APP_TIME
用戶進入小程序到當前的時間(觸發action的時間點)$CURRENT_PAGE
當前用戶所在的頁面$LAST_PAGE
上一頁注:data能夠爲空,爲空時該事件上報僅收集系統默認字段的數據
這個例子中,data有四項:post
product_id: itemID測試
product_name: itemNameui
product_price: pricespa
product_category: category
即:
事件的product_id字段,收集viewProduct頁面上page實例的data中的itemID字段;
事件的product_name字段,收集viewProduct頁面上page實例的data中的itemName字段;
事件的product_price字段,收集viewProduct頁面上page實例的data中的price字段;
事件的product_category字段,收集viewProduct頁面上page實例的data中的category字段;
以上內容表示:當用戶點擊 viewProduct 頁面上的 .addToCart 按鈕時,上報一條記錄到 add_to_cart 事件,事件的 product_id, product_name, product_price, product_category 字段, 取值分別是頁面上的 itemID, itemName, price, category。
填寫完配置後,還要點擊檢查字段
。
此時會提示 add_to_cart 事件包含的具體字段,繼續補充字段的名稱、數據類型和備註信息。
API上報比填寫配置的方式更加靈活,但這也涉及到一些代碼的更改,須要發佈新版本,而填寫配置的方式幾乎不須要更改代碼,因此無需發佈新版本。當咱們選擇API上報
後,咱們能夠設置須要上報的一下參數:
點擊生成代碼:
時間建立完成後,點擊保存,後臺就生成了一條事件記錄,並有惟一的ID與它對應:
接着,咱們在小程序代碼中能夠插入生成的代碼,以下是我在轉發成功後的success()
回掉函數中提交API上報。
... // 轉發成功 success: function (res) { wx.reportAnalytics('click_share', { page_path: current_page_path, from: from, }); }, ...
無論是填寫配置仍是API上報,都須要在填寫完配置後保存並測試。
咱們在測試事件的時候,每每要過一段時間才能接收到數據,大概1-2分鐘,爲了可以及時判斷正確性,咱們能夠在手機上的小程序應用中,打開調試,這樣,每次觸發事件時,都會在控制檯的Log中看到[自定義分析]上報成功的字樣
,點擊查看還能看到更多數據,好比上報的參數等,裏面的eventID
就對應事件的英文名稱,能夠經過這種方式快速判斷事件觸發是否符合預期,以下截圖:
經過使用,咱們發現小程序的自定義分析功能很強大,你能夠在頁面上分析任何元素、任何事件,使咱們能夠全方位的瞭解到小程序的使用狀況,對數據加以分析總結,並以數據來驅動產品的迭代,提升用戶留存。
參考:小程序官方文檔 https://developers.weixin.qq.com/miniprogram/analysis/custom