發布完小程序之后,我們還需要關注小程序的運行數據,分析數據背后的原因,幫助小程序產品迭代優化和運營,開發者可以利用小程序平臺里邊提供了面向產品的`運營數據分析`和面向開發的`運維中心`來完成數據運營的工作。
小程序提供了[【微信開發者社區】](https://developers.weixin.qq.com/home)供開發者在上邊互助答疑,小程序官方也會在社區上同步各類最新的信息,例如小程序Bug的修復情況、解答一些開發者疑問等等。
[TOC]
### 4.4.1 數據分析
1. 常規分析
開發網頁和App應用都需要開發者自己通過編寫代碼來上報訪問數據,小程序平臺則直接內置在宿主環境底層,無需開發者新增一行代碼。
小程序數據分析,是面向小程序開發者、運營者的數據分析工具,提供關鍵指標統計、實時訪問監控、自定義分析等,幫助小程序產品迭代優化和運營。主要功能包括每日例行統計的`標準分析`,以及滿足用戶個性化需求的`自定義分析`。開發者可以登錄小程序管理平臺,通過左側“數據分析”菜單可以進入數據分析查看。

:-: 圖5-12 小程序昨日關鍵用戶指標
我們還可以查看關鍵指標的趨勢,包括`累計訪問用戶數`、`打開次數`、`訪問次數`等指標,可選擇時間進行對比,如圖5-13所示。

:-: 圖5-13 小程序趨勢概況
在小程序平臺還可以查看小程序的訪問分析,包括小程序用戶訪問:
* 規模
* 來源
* 頻次
* 時長
* 深度
* 留存以及
* 頁面詳情
等數據。上述數據可以用于具體分析用戶新增、活躍和留存情況。
為了讓開發者可以更加詳細了解使用的用戶情況,數據分析也提供了小程序的用戶畫像數據,包括用戶
* 年齡
* 性別
* 地區
* 終端及機型分布。
2. 自定義分析
開發者還可以對用戶在小程序內的行為做精細化跟蹤,滿足頁面訪問等標準統計以外的個性化分析需求。例如,電商類小程序通過配置自定義上報,收集數據,可以完成如下分析:
1. 購買商品的人,各省份、城市、年齡、性別的分布如何?不同用戶群購買的商品數量、商品價格有什么差別?
2. 用戶訪問商品頁、查看商品詳情、查看評論、下單、支付、完成購買,逐步的轉化率如何?不同用戶群的轉化是否有差異?
3. 今天參與線上活動的用戶,各個時段(小時級)的活躍度如何?
具體參見小程序官方提供的[【小程序自定義分析文檔】](https://mp.weixin.qq.com/debug/wxadoc/analysis/custom/)
### 4.4.2 運維中心
小程序的邏輯代碼由JavaScript腳本編寫,JavaScript可以通過一些方法\[第二部分8.2節異常]來檢測運行時異常的發生,小程序宿主環境已經內置了異常檢測的模塊,并且上報到小程序平臺,開發者可以通過小程序平臺的“運維中心”查看具體的錯誤日志,開發者根據日志詳細定位自己代碼的異常處并及時修復。
開發者不可能時時刻刻都在電腦前關注這個日志的變化曲線,因此比較推薦的方法是通過運維中心的監控告警功能,開發者設置合理的錯誤閾值,再通過加入微信告警群,當小程序運行發生大量異常現象時,微信告警群會提醒開發者,此時開發者再登錄小程序管理平臺查閱錯誤日志。小程序平臺目前只提供了腳本錯誤告警,如果需要監控異常的訪問或者服務接口耗時時,需要開發者自行開發監控系統,并在小程序邏輯代碼加上對應的數據上報。
### 4.4.3 微信開發者社區
開發者可以在社區上進行提問或者查看問題進展,小程序官方會在社區第一時間同步各種Bug的解決辦法。由于小程序官方的人力有限,所以我們鼓勵開發者在社區上互助答疑,提高效率。
為了提高發問的質量,我們建議開發者在提問時提供盡可能多的信息,以便回答者可以根據信息去復現問題并解決問題。我們下邊給出一般提問反饋Bug時需要的信息:
1. 一個清晰的問題標題,直接簡潔的描述問題的核心點,可以有效的讓回答者在問題列表中更快的理解你的難處。
2. Bug的類型歸屬,例如是開發者工具出現的問題,還是小程序API出現的問題,開發者要描述清楚。
3. Bug發生的環境是什么?是在微信客戶端的iOS端還是安卓端,對應的微信版本是多少,宿主環境的版本是多少?
4. Bug詳細的描述,開發者應該清晰地描述Bug的具體表現,產生Bug的具體途徑,并且給出自己期望的結果,以便回答者可以驗證是否能解決此問題。
5. 給出一個最簡單能夠復現問題的代碼能夠讓回答者更快的定位問題所在。
開發者也可以利用微信開發者社區提出一些需求,截止到本書編寫完成時,小程序官方已經從社區的反饋中了解到開發者的很多需求,在小程序的版本迭代中針對部分需求提供了對應的組件或者API支持。
- 微信
- 小程序
- 1. 代碼組成
- 1.1 JSON配置--'*.json'文件
- 1.2 WXML模板--'*.wxml'文件
- 1.3 WXSS樣式--'*.wxss'文件
- 1.4 JavaScript腳本--'*.js'文件
- 2. 客戶端運行
- 2.1 邏輯層和渲染層
- 2.1.1 邏輯層--App Service
- 2.1.2 渲染層/視圖層--View
- 2.1.3 通信模型
- 2.1.4 數據驅動
- 2.1.5 雙線程下的界面渲染
- 2.2 程序與頁面
- 2.3 組件
- 2.4 API
- 2.5 事件
- 2.6 兼容
- 3. 應用設計
- 3.1 Flex布局
- 3.2 界面常見的交互反饋
- 3.3 發起HTTPS網絡通信--wx.request
- 3.4 微信登錄
- 3.5 本地數據緩存
- 3.6 設備能力
- 4. 小程序的協同工作和發布
- 4.1 協同工作
- 4.2 用戶體驗審視
- 4.3 發布
- 4.4 運營
- 5. 底層框架
- 5.1 雙線程模型
- 5.2 組件系統--Exparser框架
- 5.3 原生組件
- 5.4 小程序與客戶端通信原理
- 6. 運行和性能優化
- 6.1 啟動--代碼加載
- 6.2 頁面準備
- 6.3 數據通信
- 6.4 視圖層渲染
- 6.5 原生組件通信
- 7. 小程序基礎庫的更新迭代
- 8. 微信開發者工具
- 騰訊云支持
- wafer
- Wafer2 快速開發 Demo - PHP
- WXAPI
- api列表