删除埋点,im和客服

This commit is contained in:
谢宇宁
2026-10-08 20:10:40 +07:00
parent 92816047c6
commit 5064de7399
133 changed files with 220 additions and 1405 deletions
+5 -6
View File
@@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:jydj/assets_tool/app_colors.dart';
import 'package:jydj/assets_tool/images.dart';
import 'package:jydj/hj_utils/api_service/common_service.dart';
import 'package:jydj/hj_utils/screen.dart';
import '../../hj_model/splash/ads_model.dart';
@@ -11,7 +12,6 @@ import '../../routers/jump_router.dart';
import '../../tools_base/banner/ads_banner.dart';
import '../../tools_base/banner/ads_item.dart';
import '../../tools_base/widget/net_image_widget.dart';
import '../../track_event_manager/track_manager.dart';
/// 启动页广告:3 秒倒计时后右上角按钮变为"关闭",点击触发 callback 跳首页
class SplashAdView extends StatefulWidget {
@@ -73,7 +73,10 @@ class _SplashAdViewState extends State<SplashAdView> {
if (dataLen == 1) {
final ad = widget.adData!.first;
return GestureDetector(
onTap: () => pushToPageByLink(ad.href ?? "", id: ad.id),
onTap: () {
pushToPageByLink(ad.href ?? "");
CommonService.adsClick(ad.id);
},
child: Container(
alignment: Alignment.center,
child: NetworkImageLoader(
@@ -221,10 +224,6 @@ class _SplashBannerWidgetState extends State<SplashBannerWidget> {
return AdsItem(
adInfo: ad,
showType: AdShowType.splash,
exposureModel: AdExposureModel(
pageType: TrackEventPageType.start,
adType: AdType.splash,
),
);
},
),
+1 -54
View File
@@ -1,8 +1,5 @@
import 'dart:convert';
import 'package:analytics_sdk/analytics_sdk.dart';
import 'package:analytics_sdk/entity/app_install_event.dart';
import 'package:analytics_sdk/enum/user_type_enum.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
@@ -19,12 +16,10 @@ import 'package:jydj/hj_page/pre_sale/limit_time_provider.dart';
import 'package:jydj/hj_page/pre_sale/pre_sale_provider.dart';
import 'package:jydj/hj_utils/api_service/common_service.dart';
import 'package:jydj/hj_utils/detect_line_manager.dart';
import 'package:jydj/hj_utils/holiday_theme.dart';
import 'package:jydj/hj_utils/local_server.dart';
import 'package:jydj/hj_utils/local_server_guard.dart';
import 'package:jydj/hj_utils/text_util.dart';
import 'package:jydj/hj_utils/version_util.dart';
import 'package:jydj/im_manager/im_manager.dart';
import 'package:jydj/tools_base/debug_log.dart';
import 'package:jydj/tools_base/ad_manager.dart';
import 'package:jydj/tools_base/global_store/store.dart';
@@ -36,7 +31,6 @@ import 'package:jydj/tools_base/widget/common_alert.dart';
import '../../alert/splash/line_error_dialog.dart';
import '../../alert/splash/update_dialog.dart';
import '../../hj_utils/free_play_manager.dart';
import '../../hj_utils/install_util.dart';
import '../../tools_base/loading/loading_alert_widget.dart';
import '../../track_event_manager/device_service.dart';
import '../live/live_main_page.dart';
@@ -51,7 +45,6 @@ class SplashLogic extends GetxController {
// ===== 启动数据 =====
bool isDataReady = false; //模块列表已落地
bool _isTracked = false; //登录埋点去重
bool _isExiting = false; //强更被拒、已请求退出 app:后续流程一律不再放行首页
@override
@@ -76,19 +69,13 @@ class SplashLogic extends GetxController {
//1. 初始化网络层
_initNet(line);
//2.先登录,后升级,不然渠道一升级就没有量了,先登录才能获取配置信息
final userInfo = await _devLogin();
ImManager().initImSDK(); // 登录后初始化 IM SDK,需先拿到动态配置(随登录返回写入 ImManager)
await _devLogin();
// 模块列表只依赖登录拿到的 token,请求先发出去跟下面的配置/更新检查并行跑,
// 但结果留到更新检查之后才放行(见末尾)——强更期间不能让首页变成可跳
// ignore():先占个监听位,免得错误在 await 到之前被当成未捕获异常上报;真正的错误照旧在 await 处抛
final tagTask = CommonService.getTagMarks()..ignore();
//2. 获取远程配置
final versions = await _fetchConfig();
ImManager().connectServer(); //登录并拿到配置后连接 IM 服务器
//3.获取到配置信息拿到baseurl才进行埋点
if (userInfo != null) {
_trackEvents(userInfo);
}
PreSaleProvider().refreshConfig();
MineMsgProvider().startPayTimer(); //冷启动 /ping/domain 下发支付分层配置后启动倒计时
FreePlayManager().refresh(); //免费次数进首页才用得到,不 await、不挡启动
@@ -107,34 +94,6 @@ class SplashLogic extends GetxController {
update();
}
//埋点事件
Future _trackEvents(UserInfoModel userInfo) async {
//安装
final traceId = await DeviceInfoService.fetchTraceId();
final isFirst = await InstallUtil.isFirstInstall();
if (isFirst) {
debugLog('splash', '第一次安装,执行首次安装初始化');
// 执行首次安装的初始化操作
await InstallUtil.markAsInstalled();
//新增SDK埋点
AnalyticsSdk.instance.track(AppInstallEvent(
traceId: traceId,
));
} else {
debugLog('splash', '已安装过,跳过首次安装初始化');
}
// 登录埋点
if (!_isTracked) {
_isTracked = true;
//新增SDK埋点
AnalyticsSdk.setUserIdAndType(
userId: "${userInfo.uid}",
userTypeEnum: userInfo.isVip == true ? UserTypeEnum.vip : UserTypeEnum.normal,
);
}
}
///一直检查网络直到成功
Future<String?> _detectLine() async {
LoadingAlertWidget.show(title: "选线中...");
@@ -172,20 +131,11 @@ class SplashLogic extends GetxController {
..dc = channel
..tid = traceId;
paste = json.encode(cutInfo.toJson());
AnalyticsSdk.setChannel(channel);
} else {
//1.获取粘贴板(走缓存,避免 iOS 多次弹系统读取提示)
final clipText = await DeviceInfoService.getClipboardTextCached();
if (TextUtil.isNotEmpty(clipText)) {
paste = clipText!;
try {
final map = jsonDecode(paste) as Map<String, dynamic>;
final dc = map['dc'] as String?;
//更新渠道信息
if (dc != null) AnalyticsSdk.setChannel(dc);
} catch (_) {
//粘贴板内容非合法 JSON,忽略
}
}
}
final deviceId = DeviceInfoService.deviceId;
@@ -238,15 +188,12 @@ class SplashLogic extends GetxController {
//限时活动相关
limitTimeProvider.bannerJump = info.bannerJump;
Config.proxyBanner = info.proxyBannerJump;
holidayTheme.setThemeValue(info.festivalUi ?? '');
// holidayTheme.setThemeValue('春节');
Config.hotWords = info.hotSearchTerms ?? [];
Config.searchHints = info.searchHintWord ?? [];
Config.darkWebVipId = info.darkWebVipId;
Config.darkWebVipName = info.darkWebVipName;
Config.shortDramaCardId = info.shortDramaCardId;
await AnalyticsSdk.instance.refreshDomainConfig(encryptedConfig: info.reportSdkConfig);
} catch (e) {
debugLog('getRemoteConfig', e.toString());
final retry = await CommonAlert.show(