Commit bcb5ebb1e09df559c03f220e93daaa1dfc151e7f

Authored by 常守达
1 parent 2af8f8e5

feat(track):数数初始化

... ... @@ -3,6 +3,7 @@ import 'dart:convert';
import 'package:doublefeel_flutter/core/config/app_environment_config.dart';
import 'package:doublefeel_flutter/core/constants/app_const.dart';
import 'package:doublefeel_flutter/core/logging/app_logger.dart';
import 'package:doublefeel_flutter/core/services/thinking_data_service.dart';
import 'package:doublefeel_flutter/data/models/local/user_preferences.dart';
import 'package:doublefeel_flutter/l10n/gen/app_localizations.dart';
import 'package:doublefeel_flutter/pigeon/platform_api.g.dart';
... ... @@ -119,6 +120,12 @@ class LoginController extends GetxController {
super.onClose();
}
@override
void onReady() {
super.onReady();
ta.track('enter_doublefeel_welcome_page');
}
String get cleanPhone => phoneInput.value.replaceAll(' ', '');
bool get canRequestCode =>
... ...
import 'dart:math' as math;
import 'package:doublefeel_flutter/core/config/app_environment_config.dart';
import 'package:doublefeel_flutter/core/services/thinking_data_service.dart';
import 'package:doublefeel_flutter/core/theme/app_theme.dart';
import 'package:doublefeel_flutter/data/local/local_storage.dart';
import 'package:doublefeel_flutter/l10n/l10n_extensions.dart';
... ...
import 'package:get/get.dart';
import 'package:thinking_analytics/td_analytics.dart';
import '../config/app_environment_config.dart';
import '../constants/app_const.dart';
import '../logging/app_logger.dart';
... ... @@ -13,17 +16,35 @@ class ThinkingDataService {
'ThinkingData init appId=${_environment.thinkingDataAppId} '
'url=${AppConst.thinkingDataServerUrl}',
);
TDAnalytics.init(
_environment.thinkingDataAppId, AppConst.thinkingDataServerUrl);
}
void login(int userId) {
void login(String userId) {
AppLogger.i('ThinkingData login $userId');
TDAnalytics.login(userId);
}
void logout() {
AppLogger.i('ThinkingData logout');
TDAnalytics.logout();
}
void userSet(Map<String, Object?> properties) {
AppLogger.i('ThinkingData userSet $properties');
TDAnalytics.setSuperProperties(properties);
}
void timeEvent(String s) {
TDAnalytics.timeEvent(s);
}
void track(String s, {Map<String, dynamic>? properties}) {
TDAnalytics.track(s, properties: properties);
}
static ThinkingDataService get instance => Get.find<ThinkingDataService>();
}
/// Global shorthand to access [ThinkingDataService]
ThinkingDataService get ta => Get.find<ThinkingDataService>();
... ...
... ... @@ -48,7 +48,7 @@ class UserStateService {
void _trackLogin() {
final uid = _userPrefs.preferences.value.meUserInfo?.id ?? 0;
if (uid > 0) {
_thinkingDataService.login(uid);
_thinkingDataService.login(uid.toString());
}
}
... ...