万年历 购物 网址 日历 小说 | 三峰软件 天天财富 小游戏 视频推荐 小游戏
TxT小说阅读器
↓小说语音阅读,小说下载↓
一键清除系统垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放,产品展示↓
首页  日历2025  日历2026  日历2027  日历知识  | 每日头条  视频推荐  数码知识 两性话题 情感天地 心理咨询 旅游天地 | 明星娱乐 电视剧  职场天地  体育  娱乐 
日历软件  煮酒论史  历史 中国历史 世界历史 春秋战国 三国 唐朝 宋朝 明朝 清朝 哲学 厚黑学 心理学 | 文库大全  文库分类 
电影票房 娱乐圈 娱乐 弱智 火研 中华城市 仙家 六爻 佛门 风水 钓鱼 双色球 戒色 航空母舰 网球 乒乓球 足球 nba 象棋 体操
商业财经知识 科技 汽车知识 工程技术知识 时尚与穿搭 家居与生活 设计艺术知识
    
  知识库 -> 汽车知识 -> 如何看待华为智驾里程,断网后数据还在动?有没有人分析一下代码? -> 正文阅读

[汽车知识]如何看待华为智驾里程,断网后数据还在动?有没有人分析一下代码?

[收藏本文] 【下载本文】
华为智驾APP断网后智驾里程数字还在持续跳动,这是前端动画效果还是里程统计机制存在问题? 最近刷到不少视频,车主关闭手机网络后,华为乾崑APP里的NC…
笑死,带节奏回旋镖打到FSD了。
录屏多录几秒ADS智驾统计就停了


00:19
FSD就不一样根本不会停下,改个时间还能多几百亿英里


00:19




前端都没混淆代码,那不一扒就有


页面加载


初始化三个 runNum 动画实例(显示 0)


立即请求 queryInit(首次)

├─ 成功且数据合法 ──? 先滚到 max(本地缓存, min值)
│ 再滚到 max值
│ 切换接口为 query
│ 显示面板

└─ 失败/数据不合法 ──? 隐藏面板或保持默认值


1.5s 后请求 query(第二次)


每 3s 轮询 query

├─ 新值 ≥ 当前值 ──? 更新并滚动到新值

└─ 新值 < 当前值 ──? 保持当前值(只增不减)

$(function () {

  // 接口请求开始
  let getUrl = 'https://auto.huawei.com/external/uiapi/ads/v1/queryInit'
  let pilotPageContainer = $('<ul id="pilot" class="runNum"></ul>')
  let mileagePageContainer = $('<ul id="mileage" class="runNum"></ul>')
  let avoidPageContainer = $('<ul id="avoid" class="runNum"></ul>')
  let pilotDefaultValue = 0
  let mileageDefaultValue = 0
  let avoidDefaultValue = 0
  $('#numberContainer1').append(pilotPageContainer)
  $('#numberContainer2').append(mileagePageContainer)
  $('#numberContainer3').append(avoidPageContainer)

  let pilotInstance = pilotPageContainer.runNum({
    initialValue: 0
  })
  let mileageInstance = mileagePageContainer.runNum({
    initialValue: 0
  })
  let avoidInstance = avoidPageContainer.runNum({
    initialValue: 0
  })

  let isSuccess = true

  /**
   * 判断值是否为非空、大于0的整数(即正整数)
   * @param {*} value - 待判断的值
   * @returns {boolean} - 如果是正整数返回 true,否则返回 false
   */
  function isPositiveInteger(value) {
    // 1. 类型检查:必须是 number 类型
    if (typeof value !== 'number') {
      return false
    }

    // 2. 有效性检查:排除 NaN 和 Infinity
    if (!isFinite(value)) {
      return false
    }

    // 3. 整数检查:必须是整数
    if (!Number.isInteger(value)) {
      return false
    }

    // 4. 范围检查:必须大于 0
    if (value <= 0) {
      return false
    }

    return true
  }

  // 接口请求
  function fetchData() {
    $.ajax({
      url: getUrl,
      type: 'GET',
      dataType: 'json',
      success: function (res) {

        if (res.code == '200') {

          if (isSuccess) {
            var maxPilot = parseInt(res.data[0].pilot.value)
            var minPilot = parseInt(res.data[1].pilot.value)
            var maxMileage = parseInt(res.data[0].mileage.value)
            var minMileage = parseInt(res.data[1].mileage.value)
            var maxAvoid = parseInt(res.data[0].avoid.value)
            var minAvoid = parseInt(res.data[1].avoid.value)
          }
          else {
            var secondPilotData = parseInt(res.data.pilot.value)
            var secondMileageData = parseInt(res.data.mileage.value)
            var secondAvoidData = parseInt(res.data.avoid.value)
          }

          var localPilotValue = localStorage.getItem("pilot") === null ? 0 : parseInt(localStorage.getItem("pilot"))
          var localMileageValue = localStorage.getItem("mileage") === null ? 0 : parseInt(localStorage.getItem("mileage"))
          var localAvoidValue = localStorage.getItem("avoid") === null ? 0 : parseInt(localStorage.getItem("avoid"))

          if (isPositiveInteger(maxPilot) && maxPilot >= localPilotValue && isPositiveInteger(minPilot) && isPositiveInteger(maxMileage) && maxMileage >= localMileageValue && isPositiveInteger(minMileage) && isPositiveInteger(maxAvoid) && maxAvoid >= localAvoidValue && isPositiveInteger(minAvoid)) {
            isSuccess = false
            $('.ias-safety-setion1').addClass('on')
            getUrl = 'https://auto.huawei.com/external/uiapi/ads/v1/query'

            pilotDefaultValue = maxPilot
            var remotePilotValue = minPilot
            pilotInstance.updateValue(localPilotValue > remotePilotValue ? localPilotValue : remotePilotValue)

            mileageDefaultValue = maxMileage
            var remoteMileageValue = minMileage
            mileageInstance.updateValue(localMileageValue > remoteMileageValue ? localMileageValue : remoteMileageValue)

            avoidDefaultValue = maxAvoid
            var remoteAvoidValue = minAvoid
            avoidInstance.updateValue(localAvoidValue > remoteAvoidValue ? localAvoidValue : remoteAvoidValue)

            setTimeout(function () {
              pilotInstance.updateValue(maxPilot)
              mileageInstance.updateValue(maxMileage)
              avoidInstance.updateValue(maxAvoid)
            }, 10)

          } else if (isPositiveInteger(secondPilotData) && isPositiveInteger(secondMileageData) && isPositiveInteger(secondAvoidData)) {
            if (secondPilotData >= pilotDefaultValue) {
              pilotDefaultValue = secondPilotData
              pilotInstance.updateValue(secondPilotData)
            } else {
              if (pilotDefaultValue == 0) {
                $('.ias-safety-setion1').removeClass('on')
              } else {
                pilotInstance.updateValue(pilotDefaultValue)
              }
            }

            if (secondMileageData >= mileageDefaultValue) {
              mileageDefaultValue = secondMileageData
              mileageInstance.updateValue(secondMileageData)
            } else {
              if (mileageDefaultValue == 0) {
                $('.ias-safety-setion1').removeClass('on')
              } else {
                mileageInstance.updateValue(mileageDefaultValue)
              }
            }

            if (secondAvoidData >= avoidDefaultValue) {
              avoidDefaultValue = secondAvoidData
              avoidInstance.updateValue(secondAvoidData)
            } else {
              if (avoidDefaultValue == 0) {
                $('.ias-safety-setion1').removeClass('on')
              } else {
                avoidInstance.updateValue(avoidDefaultValue)
              }
            }

          } else {
            if (pilotDefaultValue == 0 || mileageDefaultValue == 0 || avoidDefaultValue == 0) {
              $('.ias-safety-setion1').removeClass('on')
            } else {
              pilotInstance.updateValue(pilotDefaultValue)
              mileageInstance.updateValue(mileageDefaultValue)
              avoidInstance.updateValue(avoidDefaultValue)
            }
          }

        } else {
          if (pilotDefaultValue == 0 || mileageDefaultValue == 0 || avoidDefaultValue == 0) {
            $('.ias-safety-setion1').removeClass('on')
          } else {
            pilotInstance.updateValue(pilotDefaultValue)
            mileageInstance.updateValue(mileageDefaultValue)
            avoidInstance.updateValue(avoidDefaultValue)
          }
        }
      },
      error: function () {
        // 请求失败时显示异常
        if (pilotDefaultValue == 0 || mileageDefaultValue == 0 || avoidDefaultValue == 0) {
          $('.ias-safety-setion1').removeClass('on')
        } else {
          pilotInstance.updateValue(pilotDefaultValue)
          mileageInstance.updateValue(mileageDefaultValue)
          avoidInstance.updateValue(avoidDefaultValue)
        }

      },
    })
  }

  fetchData()
  setTimeout(fetchData, 1500)
  setInterval(fetchData, 3000)

})

第一:所有所谓视频都不敢录屏超过5秒,因为一旦超过5秒,就会发现里程数走的越来越慢,最后停下来。
至于为什么不是立刻停下来,只是因为有网页缓存罢了。
第二:一旦恢复网络,立刻里程修复同步到官网数据。
第三:早在6月25日就有人发现,里程是真实的,不存在紧急修复。所以提问者的前提就是错的。


第四:以华为在网络的舆论环境,但凡没有过错都要被造谣抹黑,那还敢出这种低级毛病?
第五:体会到什么叫真正的饱和式攻击了吧?一夜之间,黑稿都没停过。好可怕!
最后:不管你怎么黑,华为智驾仍然是现在国内断档领先的一档,你看路上除了华为,还能见到几个别家的智驾?
更可怕的是:华为智驾的升级速度,也是最快的。
题主本意是想看华为ADS的笑话
没想到把火星教主本机日期x线性计数的前端小学生算法扒了出来
FSD智驾历程还能累计负数你敢信
真的是坏人绞尽脑汁,不如蠢人灵机一动
本来想带一波节奏,结果让呆弟出洋相
一根经变成两头堵
之前的版本不清楚,现在反正是前端一直在循环GET请求后端拿数据,时间间隔大概是3秒左右。
每个人都可以去官网看看。


刚刚评论区的老哥启发了我,其实如果真要验证数据是不是真实的,可以长时间采样记录。
理论上,数据应该具有这几个特点:
1.因为当前搭载华为智驾的车仅在中国境内使用,那数据增长应该存在明显的昼多夜少的特点。同时在每天的早晚高峰期间,应该增长的更快。
2.随着搭载华为智驾的车辆卖的越来越多,理论上,数据的增长速度也应该增快。有心人可以快照记录,半年,一年之后来对比。
哈哈哈哈哈,万事就怕有心人。
[收藏本文] 【下载本文】
   汽车知识 最新文章
2026F1英国大奖赛正赛勒克莱尔夺冠,维斯塔
如果北京车牌突然免费发放,你猜第一个崩溃
吉利星愿已经销冠一年了其他的竞品为什么没
网传华为尚界Z7T新车因掉漆导致无法上牌,你
为啥国产车年年迭代还干不过特斯拉9年/7年前
如何看待长城汽车董事长魏建军在长城年会直
如何看待比亚迪2月销量19万辆?海外销量首次
取消车辆年检, 利大还是弊大?
小米汽车凭借什么后来居上?
小鹏汽车无明显短板,为何陷入销量困境?
上一篇文章      下一篇文章      查看所有文章
加:2026-07-07 14:50:42  更:2026-07-07 14:51:58 
 
娱乐生活: 电影票房 娱乐圈 娱乐 弱智 火研 中华城市 印度 仙家 六爻 佛门 风水 古钱币交流专用 钓鱼 双色球 航空母舰 网球 乒乓球 中国女排 足球 nba 中超 跑步 象棋 体操 戒色 上海男科 80后
足球: 曼城 利物浦队 托特纳姆热刺 皇家马德里 尤文图斯 罗马 拉齐奥 米兰 里昂 巴黎圣日尔曼 曼联
  网站联系: qq:121756557 email:121756557@qq.com  知识库