最近產品讓我加上數據統計功能,恰好極光官方支持數據統計 支持了 React Native 版本react
在你的項目路徑下執行命令:web
npm install janalytics-react-native --save npm install jcore-react-native --save react-native link
ReactNative iOS 端配置步驟在插件中自動完成,無需額外的配置。npm
接下來在 JS 文件中只要導入 JAnalyticsModule 就能夠調用它的接口了:react-native
import JAnalyticsModule from 'janalytics-react-native'; JAnalyticsModule.setup({appKey: "you appKey get from jiguang website"}) // iOS 端須要先調用該方法
這個方法表示開始記錄頁面統計,在生命週期中調用:app
componentDidMount() { var param = { pageName: "main" }; JAnalyticsModule.startLogPageView(param); }
這個方法表示結束記錄頁面統計,在生命週期中調用:post
componentWillUnmount() { var param = { pageName: "main" }; JAnalyticsModule.stopLogPageView(param); }
上報統計事件,目前事件分爲:CountEvent(計數事件)、CalculateEvent(計算事件)、RegisterEvent(註冊事件)、LoginEvent(登陸事件)、BrowseEvent(瀏覽事件)、PurchaseEvent(購買事件)。各事件格式以下:插件
loginEvent = { type: 'login', // 必填 extra: Object, // 附加鍵值對,格式 {String: String} method: String, // 填本身的登陸方法 success: Boolean } registerEvent = { type: 'register', // 必填 extra: Object, // 附加鍵值對,格式 {String: String} method: String, // 填本身的登陸方法 success: Boolean } purchaseEvent = { type: 'purchase', // 必填 extra: Object, // 附加鍵值對,格式 {String: String} goodsType: String, goodsId: String, goodsName: String, success: Boolen, price: float, currency: String, // CNY, USD count: int } browseEvent = { type: 'browse', id: String, extra: Object, // 附加鍵值對,格式 {String: String} name: String, contentType: String, duration: float } countEvent = { type: 'count', extra: Object, // 附加鍵值對,格式 {String: String} id: String } calculateEvent = { type: 'calculate', extra: Object, // 附加鍵值對,格式 {String: String} id: String, value: double }
使用示例:code
onLoginPress = () => { var LoginEvent = { type: 'login', extra: { userId: "user1" }, method: "login", success: true }; JAnalyticsModule.postEvent(LoginEvent); }
做者:HuminiOS - 極光推送 原文:React Native 輕鬆集成統計功能(iOS 篇) 知乎專欄:極光日報component