Line data Source code
1 : import 'package:flutter/material.dart';
2 :
3 : import "package:mzanalytics_mybmw_example/about_page.dart";
4 : import 'package:mzanalytics_mybmw/mzanalytics_mybmw.dart';
5 :
6 0 : void main() {
7 0 : runApp(MyApp());
8 : }
9 :
10 : class MyApp extends StatefulWidget {
11 0 : @override
12 0 : _MyAppState createState() => _MyAppState();
13 : }
14 :
15 : class _MyAppState extends State<MyApp> {
16 : String _cid = 'Unknown';
17 : String _oaid = 'Unknown';
18 : String _myevent = '自定义事件';
19 :
20 0 : @override
21 : void initState() {
22 0 : super.initState();
23 : }
24 :
25 : // Platform messages are asynchronous, so we initialize in an async method.
26 :
27 0 : void getcid() async {
28 : // callback function
29 :
30 0 : String cid = await MzanalyticsMybmw.getCid();
31 :
32 0 : setState(() {
33 0 : _cid = cid;
34 : });
35 : }
36 :
37 0 : void getoaid() async {
38 : // callback function
39 :
40 0 : String oaid = await MzanalyticsMybmw.getOaid();
41 :
42 0 : setState(() {
43 0 : _oaid = oaid;
44 : });
45 : }
46 :
47 0 : @override
48 : Widget build(BuildContext context) {
49 0 : return MaterialApp(
50 : // navigatorObservers: [MZNavigationHistoryObserver()],
51 0 : home: Scaffold(
52 0 : appBar: AppBar(
53 : title: const Text('Plugin example app'),
54 : ),
55 0 : body: Container(
56 0 : padding: EdgeInsets.all(10.0),
57 0 : child: Column(
58 0 : children: <Widget>[
59 0 : RaisedButton(
60 0 : onPressed: () {
61 0 : MzanalyticsMybmw.appid("2814");
62 : },
63 0 : child: Text('初始化'),
64 : ),
65 0 : RaisedButton(
66 0 : onPressed: () {
67 0 : MzanalyticsMybmw.trackPageView({
68 : 'dt': "首页",
69 0 : 'CustomDimMetrics': {
70 : "cd1": "点击信用卡",
71 : "cd2": "查看商品详情",
72 : "cm1": "点击信用卡总用户数",
73 : "cm2": "查看商品详情总用户数"
74 : }
75 : });
76 : },
77 0 : child: Text('页面事件'),
78 : ),
79 0 : RaisedButton(
80 0 : onPressed: () {
81 0 : MzanalyticsMybmw.trackEvent({
82 : "ec": '点击热⻔banner',
83 : "ea": 'Click',
84 : "el": '点击',
85 : "ev": '0',
86 : });
87 : },
88 0 : child: Text('自定义事件监测'),
89 : ),
90 0 : RaisedButton(
91 0 : onPressed: () {
92 0 : MzanalyticsMybmw.trackSiteCustomEvent({
93 0 : 'CustomEvent': {
94 : "caid": "1",
95 : "cal1": "2020/01/10",
96 : "cal2": "15728749249",
97 : "cal3": "北京",
98 : "cav1": "2"
99 : },
100 0 : 'CustomDimMetrics': {
101 : "cd1": "点击信用卡",
102 : "cd2": "查看商品详情",
103 : "cm1": "点击信用卡总用户数",
104 : "cm2": "查看商品详情总用户数"
105 : }
106 : });
107 : },
108 0 : child: Text('高级自定义事件'),
109 : ),
110 0 : RaisedButton(
111 0 : onPressed: () {
112 0 : MzanalyticsMybmw.trackPulse();
113 : },
114 0 : child: Text('心跳事件'),
115 : ),
116 0 : RaisedButton(
117 0 : onPressed: () {
118 0 : getcid();
119 : },
120 0 : child: Text('cid: $_cid\n'),
121 : ),
122 0 : RaisedButton(
123 0 : onPressed: () {
124 0 : getoaid();
125 : },
126 0 : child: Text('oaid: $_oaid\n'),
127 : ),
128 : //自定义事件IO操作
129 0 : RaisedButton(
130 0 : onPressed: () {
131 0 : MzanalyticsMybmw.getCdAndCm();
132 0 : Navigator.push(
133 : context,
134 0 : new MaterialPageRoute(
135 0 : builder: (context) => new AboutPage()),
136 : );
137 : },
138 0 : child: Text("自定义事件-读:$_myevent\n"),
139 : ),
140 0 : RaisedButton(
141 0 : onPressed: () {
142 0 : MzanalyticsMybmw.setCd("cd2", "cd2qqqqqq");
143 : },
144 0 : child: Text("设置cd"),
145 : ),
146 0 : RaisedButton(
147 0 : onPressed: () {
148 0 : MzanalyticsMybmw.setCm("cm2", "cm22222qqqq");
149 : },
150 0 : child: Text("设置cm"),
151 : ),
152 0 : RaisedButton(
153 0 : onPressed: () {
154 0 : MzanalyticsMybmw.deleteCd("cd2");
155 : },
156 0 : child: Text("删除cd"),
157 : ),
158 0 : RaisedButton(
159 0 : onPressed: () {
160 0 : MzanalyticsMybmw.deleteCd("cm2");
161 : },
162 0 : child: Text("删除cm"),
163 : ),
164 : ],
165 : ),
166 : ),
167 : ),
168 : );
169 : }
170 : }
|