refactor: 优化日志输出,仅在调试模式下启用

- 为所有 print 语句添加 kDebugMode 检查
- 更新 KRLogUtil 工具类,Release 模式下禁用日志输出
- 优化 18 个文件中的 335+ 条日志语句
- 提升 Release 版本性能并增强安全性

(cherry picked from commit 301f1510ba81fe94fb08e013ca80b3ca708a2e15)
This commit is contained in:
2025-11-01 05:15:34 -07:00
committed by speakeloudest
parent b3ee1cc6dc
commit 4c5763647d
18 changed files with 665 additions and 232 deletions
@@ -10,6 +10,7 @@ import 'package:kaer_with_panels/app/services/singbox_imp/kr_sing_box_imp.dart';
import 'package:kaer_with_panels/singbox/model/singbox_status.dart';
import '../controllers/kr_home_controller.dart';
import '../models/kr_home_views_status.dart';
import 'package:flutter/foundation.dart';
class KRHomeConnectionInfoView extends GetView<KRHomeController> {
const KRHomeConnectionInfoView({super.key});
@@ -82,7 +83,9 @@ class KRHomeConnectionInfoView extends GetView<KRHomeController> {
// 🔧 修复:使用 Obx 包裹确保国旗响应式更新
Obx(() {
final countryCode = controller.kr_getCurrentNodeCountry();
print('🌍 ConnectionInfo 更新,国家代码: $countryCode');
if (kDebugMode) {
print('🌍 ConnectionInfo 更新,国家代码: $countryCode');
}
return KRCountryFlag(
countryCode: countryCode,
);
@@ -104,7 +107,9 @@ class KRHomeConnectionInfoView extends GetView<KRHomeController> {
children: [
Obx(() {
final delay = controller.kr_currentNodeLatency.value;
print('🔵 UI延迟显示更新: delay=$delay');
if (kDebugMode) {
print('🔵 UI延迟显示更新: delay=$delay');
}
// 获取延迟颜色
Color getLatencyColor(int delay) {
@@ -227,7 +232,9 @@ class KRHomeConnectionInfoView extends GetView<KRHomeController> {
final isSwitching = status is SingboxStarting || status is SingboxStopping;
// 🔧 调试日志
print('🔵 Switch UI 更新: status=${status.runtimeType}, isConnected=$isConnected, isSwitching=$isSwitching');
if (kDebugMode) {
print('🔵 Switch UI 更新: status=${status.runtimeType}, isConnected=$isConnected, isSwitching=$isSwitching');
}
return CupertinoSwitch(
value: isConnected,
@@ -235,7 +242,9 @@ class KRHomeConnectionInfoView extends GetView<KRHomeController> {
onChanged: isSwitching
? null
: (bool value) {
print('🔵 Switch onChanged 触发: 请求=$value, 当前状态=$status');
if (kDebugMode) {
print('🔵 Switch onChanged 触发: 请求=$value, 当前状态=$status');
}
controller.kr_toggleSwitch(value);
},
activeColor: Colors.blue,
@@ -16,6 +16,7 @@ import 'package:kaer_with_panels/app/widgets/kr_network_image.dart';
import '../../../widgets/kr_simple_loading.dart';
import '../../../../singbox/model/singbox_proxy_type.dart';
import 'package:flutter/foundation.dart';
/// 节点列表视图组件
/// 用于展示所有节点相关的列表视图
@@ -281,7 +282,9 @@ class KRHomeNodeListView extends GetView<KRHomeController> {
// 🔧 修复:改为 async,等待节点切换完成后再关闭列表
onTap: () async {
try {
print('🔄 用户点击节点: ${server.tag}');
if (kDebugMode) {
print('🔄 用户点击节点: ${server.tag}');
}
// 使用统一的节点切换方法,等待完成
final success = await controller
.kr_performNodeSwitch(server.tag);
@@ -290,12 +293,18 @@ class KRHomeNodeListView extends GetView<KRHomeController> {
if (success) {
controller.kr_currentListStatus.value =
KRHomeViewsListStatus.kr_none;
print('✅ 节点切换成功,关闭列表');
if (kDebugMode) {
print('✅ 节点切换成功,关闭列表');
}
} else {
print('❌ 节点切换失败,列表保持打开');
if (kDebugMode) {
print('❌ 节点切换失败,列表保持打开');
}
}
} catch (e) {
print('❌ 节点切换异常: $e');
if (kDebugMode) {
print('❌ 节点切换异常: $e');
}
KRLogUtil.kr_e('节点切换异常: $e',
tag: 'NodeListView');
}