Files
xiaomubiao-master/PURE_MANUAL_DEBUG_GUIDE.md
2026-05-22 16:13:20 +08:00

4.0 KiB
Raw Blame History

🎮 纯手动调试模式使用指南

完成修改

我已经按照您的要求,完全移除了自动更新功能,现在系统运行在纯手动调试模式下。

🔧 修改内容

1. 移除自动定时器

  • 删除了每2秒自动更新的 setInterval 定时器
  • 移除了 manualDebugMode 开关逻辑
  • 清理了重复的设备更新代码

2. 保留手动调试功能

  • 提取了设备更新核心逻辑到 updateDeviceDataOnce() 函数
  • 保留了所有手动调试命令
  • 优化了日志输出

3. 系统启动提示

现在系统启动时会显示:

📋 自动更新已禁用,仅支持手动调试模式
🎮 使用以下命令进行手动调试:
  - manualUpdateDevices() : 手动更新一次所有设备
  - testQB303Data() : 测试QB303设备数据
  - forceRefreshQB303() : 强制刷新QB303设备显示

🎯 可用的手动调试命令

基础设备管理

// 手动更新一次所有设备无人机、无人车、QB303等
manualUpdateDevices()

QB303设备专用

// 测试QB303设备数据发送模拟WebSocket数据
testQB303Data()

// 强制刷新QB303设备显示清理重建
forceRefreshQB303()

// 测试多个QB303设备
testMultipleQB303Data()

地图控制

// 清理地图上所有设备标记
clearAllDeviceMarkers()

// 重新初始化所有设备标记
initAllDeviceMarkers()

// 飞行到QB303设备位置
window.m3Data.map.flyTo({
  destination: Cesium.Cartesian3.fromDegrees(112.895, 28.206, 1000)
});

数据检查

// 检查QB303设备数据
console.log('QB303设备数据:', window.m3Data.qb303DeviceData);

// 检查localStorage数据
console.log('本地存储数据:', JSON.parse(localStorage.getItem("index-otherEquipmentList") || "[]"));

// 检查图形图层
console.log('图形图层数量:', window.m3Data.graphicLayer.length);

🚀 现在的工作流程

1. 系统启动

  • 🛑 不会有任何自动更新
  • 📋 系统提示手动调试模式已激活
  • 🎮 显示可用的调试命令

2. 手动调试QB303设备

// 步骤1发送测试数据
testQB303Data()

// 步骤2如果不显示强制刷新
forceRefreshQB303()

// 步骤3手动更新设备可选
manualUpdateDevices()

// 步骤4飞行到设备位置查看
window.m3Data.map.flyTo({
  destination: Cesium.Cartesian3.fromDegrees(112.8945530952381, 28.20648476190476, 1000)
});

3. 按需更新其他设备

// 只有在需要时才手动更新
manualUpdateDevices()

📊 设备类型覆盖

manualUpdateDevices() 命令会更新以下所有设备类型:

  • 无人机 (drone)
  • 无人车 (rotDog)
  • 其他设备 (deviceAir)
  • 遥控器 (remoteControl)
  • 巡飞弹 (cruiseMissile)
  • 无人车PTZT (wrcPtzt)
  • Y16设备 (hitDroneY)
  • QB303设备 (qb303DeviceData)

🎯 调试优势

完全控制

  • 🎮 您完全控制何时更新设备数据
  • 🔍 可以精确观察每个步骤的效果
  • 🛠️ 不会被后台自动更新干扰

性能优化

  • 没有后台定时器消耗资源
  • 💾 减少不必要的数据处理
  • 🔋 降低系统负载

调试便利

  • 📝 清晰的日志输出
  • 🎯 专注于特定问题
  • 🔧 灵活的测试方式

🚨 重要提醒

  1. 现在没有自动更新:设备位置不会自动刷新
  2. 需要手动触发:使用 manualUpdateDevices() 更新设备
  3. WebSocket仍然工作QB303设备数据仍会通过WebSocket接收并存储到localStorage
  4. 地图显示需要手动刷新:使用调试命令更新地图显示

🎮 快速开始

现在您可以:

  1. 刷新页面看到新的启动提示
  2. 执行 testQB303Data() 测试QB303设备
  3. 使用 manualUpdateDevices() 按需更新设备
  4. 享受完全可控的调试环境

现在系统完全按照您的要求运行:没有自动更新,只有手动调试🎯🛠️