github.com/fluttify-pr…android
dependencies:
flutter:
sdk: flutter
janalytics_fluttify: ^x.x.x
複製代碼
在 module 的 gradle 中添加依賴和AndroidManifest的替換變量。ios
android {
......
defaultConfig {
applicationId "com.xxx.xxx" // 你應用的包名.
......
manifestPlaceholders = [
JPUSH_APPKEY : "你的appkey", //JPush上註冊的包名對應的appkey.
JPUSH_CHANNEL : "developer-default", //暫時填寫默認值便可.
]
......
}
......
}
複製代碼
import 'package:janalytics_fluttify/janalytics_fluttify.dart';
複製代碼
JAnalytics Android SDK採用了數據記錄與數據上報分離的策略,數據實時記錄,按照上報策略上報數據。git
備註:如遇到極端狀況致使數據上報不成功,數據不會被清除,等待下一次上報策略觸發再上報。github
初始化代碼爲:redis
JAnalytics.init(iosKey: 'xxxx');
複製代碼
建議在main方法中進行初始化。服務器
JAnalytics.setDebugEnable(enable);
複製代碼
設置是否開啓debug模式。true則會打印更多的日誌信息。建議在init接口以前調用。微信
JAnalytics.startCrashHandler();
複製代碼
JAnalytics.setReportPeriod(Duration(second: 60));
複製代碼
最小10秒,最大1天,超出範圍會打印調用失敗日誌。傳0表示統計數據即時上報。markdown
經過傳入不一樣的事件模型來進行各類事件的統計。app
關於自定義事件作以下說明:
字符串字段(key與 value)限制大小不超過256字節,超過限制的key或value該事件將會被丟棄。
自定義鍵值對數目不能超過10個,超過10個限制該事件將會被丟棄。ide
該模型是自定義計數事件模型,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
eventId | String | 事件Id(非空) |
extMap | Map<String, String> | 擴展參數 |
自定義計數事件模型中擴展參數中不能使用如下 key 值:event_id
此類 key 已被模型使用,若是使用則會致使統計到的數據不許確.
該模型是自定義計算事件模型,計算事件會經過相同的事件不一樣的值進行累加,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
eventId | String | 事件Id(非空) |
eventValue | double | 事件的值(非空) |
extMap | Map<String, String> | 擴展參數 |
自定義計算事件模型中擴展參數中不能使用如下 key 值:event_id
event_value
此類 key 已被模型使用,若是使用則會致使統計到的數據不許確.
該模型是登陸事件模型,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
loginMethod | String | 登陸方式(非空) |
loginSuccess | bool | 登陸是否成功(非空) |
extMap | Map<String, String> | 擴展參數 |
登陸事件模型中擴展參數中不能使用如下 key 值:login_method
login_success
此類 key 已被模型使用,若是使用則會致使統計到的數據不許確.
該模型是註冊事件模型,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
registerMethod | String | 註冊方式(非空) |
registerSuccess | bool | 註冊是否成功(非空) |
extMap | Map | 擴展參數 |
該模型是瀏覽事件模型,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
browseId | String | 瀏覽內容id |
browseName | String | 內容名稱(非空) |
browseType | String | 內容類型 |
browseDuration | Duration | 瀏覽時長 |
extMap | Map<String, String> | 擴展參數 |
瀏覽事件模型中擴展參數中不能使用如下 key 值: browse_content_id
browse_name
browse_type
browse_duration
此類 key 已被模型使用,若是使用則會致使統計到的數據不許確.
該模型是購買事件模型,能夠設置參數進行數據上報。
參數名稱 | 參數類型 | 參數說明 |
---|---|---|
purchaseGoodsid | String | 商品id |
purchaseGoodsName | String | 商品名稱 |
purchasePrice | double | 購買價格(非空) |
purchaseSuccess | bool | 購買是否成功(非空) |
purchaseCurrency | Currency | 貨幣類型,一個枚舉類 |
purchaseGoodsType | String | 商品類型 |
purchaseGoodsCount | int | 商品數量 |
extMap | Map | 擴展參數 |
開發者能夠爲用戶增長帳戶信息,使統計數據能夠以帳戶維度作統計分析 現開發的屬性有:
中文名 | 英文名 | 類型 | 鑑權/備註 |
---|---|---|---|
帳號ID | accountID | String | |
帳號建立時間 | creationTime | DateTime | 時間戳 |
姓名 | name | String | |
性別 | sex | Gender | 0未知 1男 2女/不能爲其餘數字,默認爲0 |
是否付費 | paid | Paid | 0未知 1是 2否/不能爲其餘數字,默認爲0 |
出生年月 | birthdate | DateTime | yyyyMMdd格式校驗 |
手機號碼 | phone | String | 手機號碼校驗 |
電子郵件 | String | 郵箱格式校驗 | |
新浪微博ID | weiboID | String | |
微信ID | wechatID | String | |
QQ ID | qqID | String | |
自定義維度 | extra | key-value | key只能爲字符串,value只能爲字符串或數字類型或null類型; 當value設置爲空類型時,將該key從服務器上刪除 key不能使用極光內部namespace(符號$ |
JAnalytics.identifyAccount(Account(...須要設置的參數));
複製代碼
也能夠只設置部分屬性,再次調用identifyAccount修改帳戶信息。 若是要解綁當前用戶信息,調用
JAnalytics.detachAccount();
複製代碼
JAnalytics.onPageStart('頁面名稱');
複製代碼
頁面啓動接口。在頁面(widget)的相關生命週期內調用,和onPageEnd須要成對調用;
JAnalytics.onPageEnd('頁面名稱');
複製代碼
頁面結束接口。在頁面(widget)的相關生命週期內調用,和onPageStart須要成對調用;
MaterialApp(
navigatorObservers: [
PageAnalyzer(),
],
)
複製代碼
QQ羣 938842596
Copyright (C) 2020 yohom
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see www.gnu.org/licenses/.