Showing
5 changed files
with
9 additions
and
5 deletions
@@ -22,7 +22,8 @@ class AutoTrackConfig { | @@ -22,7 +22,8 @@ class AutoTrackConfig { | ||
22 | this.enableClick = true, | 22 | this.enableClick = true, |
23 | this.enableUpload = false, | 23 | this.enableUpload = false, |
24 | this.enableDrag = false, | 24 | this.enableDrag = false, |
25 | - this.enableIgnoreNullKey = false | 25 | + this.enableIgnoreNullKey = false, |
26 | + this.uploadInterval | ||
26 | }) { | 27 | }) { |
27 | trackId ??= const Uuid().v4().replaceAll('-', ''); | 28 | trackId ??= const Uuid().v4().replaceAll('-', ''); |
28 | signature ??= (t) => sha256.convert(utf8.encode('$appKey$t$appSecret')).toString(); | 29 | signature ??= (t) => sha256.convert(utf8.encode('$appKey$t$appSecret')).toString(); |
@@ -35,6 +36,8 @@ class AutoTrackConfig { | @@ -35,6 +36,8 @@ class AutoTrackConfig { | ||
35 | String? userId; | 36 | String? userId; |
36 | String? uniqueId; | 37 | String? uniqueId; |
37 | 38 | ||
39 | + int? uploadInterval; | ||
40 | + | ||
38 | Function? signature; | 41 | Function? signature; |
39 | 42 | ||
40 | List<AutoTrackPageConfig> pageConfigs; | 43 | List<AutoTrackPageConfig> pageConfigs; |
@@ -41,6 +41,8 @@ class AutoTrackConfigManager { | @@ -41,6 +41,8 @@ class AutoTrackConfigManager { | ||
41 | _deviceId = md5.convert(utf8.encode('${(_baseDeviceInfo as IosDeviceInfo).identifierForVendor}#${config.appKey}')).toString(); | 41 | _deviceId = md5.convert(utf8.encode('${(_baseDeviceInfo as IosDeviceInfo).identifierForVendor}#${config.appKey}')).toString(); |
42 | } else if (_baseDeviceInfo is AndroidDeviceInfo) { | 42 | } else if (_baseDeviceInfo is AndroidDeviceInfo) { |
43 | _deviceId = md5.convert(utf8.encode('${(_baseDeviceInfo as AndroidDeviceInfo).serialNumber}#${config.appKey}')).toString(); | 43 | _deviceId = md5.convert(utf8.encode('${(_baseDeviceInfo as AndroidDeviceInfo).serialNumber}#${config.appKey}')).toString(); |
44 | + } else if (_baseDeviceInfo is MacOsDeviceInfo) { | ||
45 | + _deviceId = '${(_baseDeviceInfo as MacOsDeviceInfo).hostName}-${(_baseDeviceInfo as MacOsDeviceInfo).computerName}'; | ||
44 | } else { | 46 | } else { |
45 | _deviceId = ''; | 47 | _deviceId = ''; |
46 | } | 48 | } |
@@ -23,7 +23,7 @@ class AutoTrackQueue { | @@ -23,7 +23,7 @@ class AutoTrackQueue { | ||
23 | 23 | ||
24 | void start() { | 24 | void start() { |
25 | if (_timer != null) return; | 25 | if (_timer != null) return; |
26 | - _timer = Timer.periodic(const Duration(seconds: 10), (timer) { | 26 | + _timer = Timer.periodic(Duration(seconds: AutoTrackConfigManager.instance.config.uploadInterval ?? 10), (timer) { |
27 | flush(); | 27 | flush(); |
28 | }); | 28 | }); |
29 | } | 29 | } |
@@ -16,8 +16,7 @@ class DragInfo { | @@ -16,8 +16,7 @@ class DragInfo { | ||
16 | dragInfo._beginOffset = begin; | 16 | dragInfo._beginOffset = begin; |
17 | dragInfo._endOffset = end; | 17 | dragInfo._endOffset = end; |
18 | dragInfo._duration = duration; | 18 | dragInfo._duration = duration; |
19 | - dragInfo._ignore = AutoTrackConfigManager.instance.isIgnoreElement( | ||
20 | - pageElement.widget.key ?? ValueKey(pageInfo.pageManualKey)); | 19 | + dragInfo._ignore = pageInfo.ignore; |
21 | 20 | ||
22 | double dx = dragInfo.endOffset.dx - dragInfo.beginOffset.dx; | 21 | double dx = dragInfo.endOffset.dx - dragInfo.beginOffset.dx; |
23 | double dy = dragInfo.endOffset.dy - dragInfo.beginOffset.dy; | 22 | double dy = dragInfo.endOffset.dy - dragInfo.beginOffset.dy; |
@@ -51,7 +51,7 @@ class _AutoTrackPanGestureRecognizer extends PanGestureRecognizer { | @@ -51,7 +51,7 @@ class _AutoTrackPanGestureRecognizer extends PanGestureRecognizer { | ||
51 | if (beginEvent != null) { | 51 | if (beginEvent != null) { |
52 | final distance = (beginEvent!.position.dx - event.position.dx).abs() + | 52 | final distance = (beginEvent!.position.dx - event.position.dx).abs() + |
53 | (beginEvent!.position.dy - event.position.dy).abs(); | 53 | (beginEvent!.position.dy - event.position.dy).abs(); |
54 | - if (distance > 30) { | 54 | + if (distance > 50) { |
55 | final info = DragInfo.from( | 55 | final info = DragInfo.from( |
56 | begin: beginEvent!.position, | 56 | begin: beginEvent!.position, |
57 | end: event.position, | 57 | end: event.position, |
-
Please register or login to post a comment