ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Uniapp真机运行:点击运行后,等待项目运行成功后,就一直卡在 ready in 83974ms.,然后就不动了...如何解决?

Uniapp真机运行:点击运行后,等待项目运行成功后,就一直卡在 ready in 83974ms.,然后就不动了...如何解决? 本文收录于 《全栈 Bug 调优实战版》 专栏。专栏聚焦真实项目中的各类疑难 Bug从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者还是负责复杂项目的资深工程师都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论助你稳步进阶、放大技术价值。特别说明文中问题案例来源于真实生产环境与公开技术社区并结合多位一线资深工程师与架构师的长期实践经验经过人工筛选与AI系统化智能整理后输出。文中的解决方案并非唯一“标准答案”而是兼顾可行性、可复现性与思路启发性的实践参考供你在实际项目中灵活运用与演进。欢迎订阅本专栏一次订阅后专栏内所有文章可永久免费阅读后续更新内容皆不用再次订阅持续更新中。 问题描述详细问题描述如下Uniapp真机运行在Hbuilderx连接手机真机运行的时候 我的小米15被识别为unknown点击运行后等待项目运行成功后就一直卡在 ready in 83974ms.,然后就不动了 手机的开发者模式已经打开USB调试所有的设置也已经打开UBS的传输也设置为文件传输但是就是没有在手机上运行起来但是换别人的小米14 就能在手机上顺利运行 这是怎么回事这不是Hbuilder的问题应该手机的问题全文目录 问题描述 请知悉如下方案不保证一定适配你的问题✅️问题理解✅️问题解决方案方案 A先把“小米 15 的 ADB 授权链”彻底重建最优先成功率最高方案 B用命令行直接验证 ADB 到底卡在哪一层这是“精准定位”的关键方案方案 C排查 ADB 冲突或 ADB 版本过旧新机型非常常见方案 D安装/重装小米 15 对应的 Windows 驱动很多人忽略但非常有效方案 E验证“基座有没有装上、有没有被系统拦截启动”方案 F直接改用“无线调试”绕过 USB 链路非常实用的兜底方案⚫方案 G最后兜底——处理 HyperOS/MIUI 的系统级限制谨慎使用✅️问题延伸✅️问题预测✅️小结 结语 互动说明 文末福利技术成长加速包 Who am I? 请知悉如下方案不保证一定适配你的问题如下是针对上述问题进行专业角度剖析答疑不喜勿喷仅供参考✅️问题理解先说结论这类现象大概率不是你的 uni-app 代码问题也不一定是 HBuilderX 本身坏了而是“小米 15 这台手机与 ADB / USB 调试授权 / 小米系统安全策略 / 设备驱动识别”这一整条链路里有一环没有真正打通。你截图里的两个关键信号非常重要设备被识别成Unknown这通常说明 HBuilderX 确实“看到了一个 Android 设备入口”但没有正常拿到完整设备信息或者拿到了不完整的 ADB 设备属性。Unknown本身不一定是致命错误但它常常意味着这台机子的ADB 授权、设备属性读取、驱动映射、或者系统限制存在异常。DCloud 官方也明确说明真机运行依赖的是“电脑识别手机 → 建立 ADB 信任关系 → 安装调试基座 → 同步并启动”这一串流程其中任何一环出问题都可能导致后续卡住。控制台停在ready in 83974ms这更像是前端编译已经完成但“编译成功 ≠ 手机端已经成功安装/启动基座”。也就是说Vite/编译器这一段结束了但HBuilderX 与手机之间的调试接力没有完成。DCloud 官方文档把这个过程拆成了硬件连接、ADB 检测、安装基座、同步并启动ready只能说明前端资源准备好了不能证明手机那头已经完成安装和启动。同一电脑、同一套开发环境别人的小米 14 能跑你的小米 15 不行这说明问题已经被极大概率缩小到你这台小米 15 的手机侧限制/授权/驱动识别/ADB 兼容性而不是你的项目代码本身。但这里我要很严谨地补一句“是手机问题”不等于“只改手机设置就一定能解决”。因为官方文档同样指出ADB 版本冲突、ADB 被其他软件占用、HBuilderX 自带 ADB 与新机型兼容性不佳也会只在某一台新手机上暴露出来。尤其新机型/新系统上这种概率并不低。✅️问题解决方案下面我按优先级 成功率 风险给你排。我建议你严格按顺序做不要乱跳步骤。这样定位最快。方案 A先把“小米 15 的 ADB 授权链”彻底重建最优先成功率最高这是我认为最像你当前问题根因的方案。你现在“USB 文件传输已打开”但这不等于 ADB 已经真正授权成功。Android 官方说明得很清楚要通过 USB 使用 adb除了打开开发者选项和 USB 调试外设备还必须在连接电脑后弹出 RSA 授权框并且用户确认授权否则 adb 命令不会真正建立可调试关系。DCloud 官方也明确要求 Android 设备必须完成“USB 调试 授权确认 ADB 安装应用允许”这些条件。你要做的完整步骤第 1 步手机里把以下开关全部重新检查一遍进入设置 - 更多设置 / 开发者选项确认这些项USB 调试打开仅充电模式下允许 ADB 调试打开ADB 安装应用/USB 安装打开USB 调试安全设置打开默认 USB 配置建议设成文件传输如果有“监控 ADB 安装应用”之类选项关闭监控 / 允许安装DCloud 官方文档明确提到Android 真机运行时要特别检查USB 调试、仅充电模式下允许ADB调试、ADB安装应用并指出像小米这类 ROM 还有独立的 USB 安装应用权限不打开会导致基座安装不到手机。小米社区也说明通过 PC 向手机安装应用需要打开USB调试和USB安装执行一部分 adb 调试命令还需要USB调试安全设置。第 2 步撤销旧授权强制重新弹 RSA 授权框在手机开发者选项里执行撤销 USB 调试授权然后拔掉数据线锁屏再解锁手机重新插线保持屏幕亮着等待是否弹出“是否允许此电脑进行 USB 调试”的授权框一定勾选始终允许使用这台计算机进行调试Android 官方明确说明Android 4.2.2 上必须确认 RSA key 授权才能允许此电脑执行 adb 调试。DCloud 官方也说明如果之前不小心拒绝了授权需要重插手机必要时重启电脑重新建立信任。第 3 步特别注意小米的“USB 调试安全设置/ USB 安装”有时需要联网和小米账号这是很多人漏掉的坑。小米社区的官方说明提到开启USB安装、USB调试安全设置时可能需要联网并登录小米账号。所以你即便“看起来打开了”也要确认它不是灰的、不是假打开、不是开启失败。第 4 步把 HBuilderX 完全关闭后再重新运行因为 DCloud 官方提到如果驱动/连接状态是在 HBuilderX 启动后才变化的有时需要重启 HBuilderX才能重新识别。这一方案为什么最像你的问题因为你现在的表现很像设备入口被看到但未完整建立调试信任编译好了但基座安装/启动没有真的完成小米新系统对 ADB 安装、调试授权额外严格这在小米 / HyperOS 机型上非常典型。方案 B用命令行直接验证 ADB 到底卡在哪一层这是“精准定位”的关键方案不要只看 HBuilderX 的 UI。你现在最需要的是直接问 adb它到底把你的小米 15 看成什么状态。DCloud 官方给出的排查方式非常明确到 HBuilderX 自带 adb 目录执行adb.exe devices如果识别异常再检查 adb 是否被占用或者更换 adb 版本。请在 Windows 命令行执行cdHBuilderX安装目录\plugins\launcher-tools\tools\adbs adb kill-server adb start-server adb devices-l然后看输出属于哪一种情况 1看不到任何设备List of devices attached后面空白。这说明根本没建立 ADB 连接。优先查手机授权、线材、USB 端口、驱动。情况 2设备是unauthorizedxxxx unauthorized这说明RSA 授权没通过。直接回到方案 A做“撤销 USB 调试授权 重插线 等授权弹窗”。情况 3设备是offlinexxxx offline这说明ADB 建立过连接但现在连接状态坏了。常见原因是缓存脏了、驱动不稳定、ADB 冲突、USB 模式切换异常。情况 4设备是devicexxxx device product:xxx model:xxx device:xxx这说明 ADB 基本通了。如果这时 HBuilderX 还是显示Unknown或者还是跑不起来那就很可能是HBuilderX 自带 adb 版本偏旧被别的 adb 抢占HBuilderX 与该新机型的基座安装链有兼容性问题你还可以继续执行adb shell getprop ro.product.model adb shell getprop ro.build.version.release adb shell pm list packages|findstr io.dcloud.HBuilder这三条分别验证能否正常读到机型能否正常读到系统版本HBuilder 调试基座是否已装进手机如果adb devices -l正常但getprop读不出来或者pm list packages看不到io.dcloud.HBuilder那就基本能锁定在“设备权限 / 安装 / ADB兼容”这条线上了。方案 C排查 ADB 冲突或 ADB 版本过旧新机型非常常见DCloud 官方明确写了两个高频原因ADB 被其他软件占用HBuilderX 自带 ADB 版本与手机要求不匹配并且官方还给了排查思路如果系统里有多个adb.exe / kadb.exe / tadb.exe或者端口5037被别的软件占用就会导致 HBuilderX 无法正常接管设备如果是新机型还可能需要更换更高版本的 adb。你要做的事第 1 步关掉一切可能自带 adb 的软件包括但不限于手机助手模拟器Android Studio有时也会抢 adb雷电 / 夜神 / 逍遥 / MuMu部分输入法、音乐播放器、IM 工具附带的 adb 进程第 2 步查 5037 端口是谁占的netstat-ano|findstr5037tasklist|findstr 进程PIDDCloud 官方明确建议这么查。第 3 步全部杀掉 adbtaskkill /F /IM adb.exe taskkill /F /IM kadb.exe taskkill /F /IM tadb.exe第 4 步重新只启动 HBuilderX 自带 adbcdHBuilderX安装目录\plugins\launcher-tools\tools\adbs adb start-server adb devices-l第 5 步必要时升级 adb如果你的小米 15 是新系统、新设备而 HBuilderX 版本比较旧这一步非常值得做。DCloud 官方明确说了如果仍不行有一种可能就是手机对 adb 版本有要求需要替换 HBuilder 自带 adb也可以直接下载 Android SDK 的 adb 来替换。这个方案为什么重要因为“别人小米 14 可以你的小米 15 不行”还有一种很现实的解释旧 adb 能勉强兼容旧设备但在新设备/新系统上失败。方案 D安装/重装小米 15 对应的 Windows 驱动很多人忽略但非常有效虽然你说别人的小米 14 能跑但我还是建议你认真做这一步。原因是不同机型的 USB 硬件 ID 可能不同Windows 可能给你的小米 15 装了一个“能传文件但不能稳定 ADB”的驱动状态文件传输正常不代表ADB 驱动就完全正常DCloud 官方文档明确指出在 Windows 上如果拒绝或缺失手机驱动就可能导致 HBuilderX 检测不到手机或者检测异常而 Android 官方同样要求通过 USB 使用 adb 时设备必须被正确识别。怎么做第 1 步打开设备管理器插上小米 15 后查看便携设备Android Device其他设备通用串行总线设备看有没有黄色感叹号未知设备Android Composite ADB Interface缺失第 2 步卸载旧设备并重插对疑似相关项右键卸载设备勾选“删除此设备的驱动程序软件”如果有拔线重插重新授权第 3 步换 USB 口优先电脑主板后置 USB 口避免前置口避免 HUB避免多功能扩展坞DCloud 官方也建议先排查线材与 USB 口因为这类问题极常见。方案 E验证“基座有没有装上、有没有被系统拦截启动”你截图里没有出现特别明确的“正在安装手机端 HBuilder 调试基座 / 正在启动 HBuilder 调试基座 / 应用已启动”那类完整日志所以还要防一个情况其实手机已经收到安装请求但被系统静默拦截了或者装上了但没成功拉起。DCloud 官方把“安装调试基座到手机”明确列为单独步骤并说明如果手机禁止 USB 安装就会失败。你可以这么验证adb shell pm list packages|findstr io.dcloud.HBuilder如果能搜到包名说明基座大概率已安装。接着到手机桌面、应用管理里搜索HBuilder调试基座io.dcloud.HBuilder看是否存在。如果包存在但手机上没显示运行页面那就要继续查应用是否被系统“后台启动限制”是否首次启动权限弹窗被挡住是否被纯净模式 / 安全守护 / 应用安装拦截是否被默认限制“通过 USB 安装的应用”建议检查应用管理 - HBuilder - 自启动允许后台弹出界面允许后台运行无限制首次安装后所有权限都给上试一下方案 F直接改用“无线调试”绕过 USB 链路非常实用的兜底方案这个不是“根修复”但在开发中非常实用很多时候还能一把过。DCloud 官方已经支持Android 11 的无线 ADB 真机调试并说明从HBuilderX 4.71开始支持可视化无线连接而 Android 官方也确认 Android 11 支持无线 adb。你的场景特别适合试这个手机是新机有线 USB 调试链路疑似被系统限制电脑与手机都正常联网别人设备能跑说明项目和 IDE 基本没问题操作步骤确保手机和电脑在同一 Wi-Fi手机打开开发者选项 - 无线调试HBuilderX 里选择运行到 Android App 基座 - 无线连接用二维码配对或配对码配对DCloud 官方说明Android 11 起支持无线 adbHBuilderX 4.71 提供图形化无线连接配对成功后设备会出现在运行列表中下次只要同网段、重新开启无线调试即可继续用。为什么我推荐它作为兜底因为它能直接绕开 USB 线、USB 驱动、USB 模式、部分 USB 授权链问题。如果你无线调试能跑起来那么就更能证明你的问题核心就在 USB/ADB 有线链路不在 uni-app 项目本身。⚫方案 G最后兜底——处理 HyperOS/MIUI 的系统级限制谨慎使用这是最后兜底不是首选。因为不同版本的小米系统中有时会出现一些更深层的限制例如纯净模式 / 安全守护拦截应用安装校验企业管理策略某些开发者选项未真正生效系统更新后的调试异常缓存可尝试动作关闭并重新开启开发者选项全部相关项重启手机更换数据线更新系统到最新稳定版更新 HBuilderX 到较新版本若你当前是很旧版 HBuilderX优先升级若有“固定基座 / 老基座”换成最新版基座再试之所以我把它放最后是因为这些动作不如前面几项精准但在 HyperOS 类系统上偶发问题确实会被这种“全量重置开发调试环境”解决。✅️问题延伸这类问题本质上不是“uni-app 不行”而是移动端真机调试天然依赖一条很长的外部链路你现在最可能卡住的点是C / D / E / F之间。尤其是小米系系统往往不是单纯USB调试一个开关就够还会额外依赖USB 安装USB 调试安全设置ADB 安装应用允许首次 RSA 授权某些系统安全确认这也是为什么“文件传输没问题但真机运行不行”会频繁出现。因为MTP 文件传输链路通了不代表 ADB 调试链路也通了DCloud 官方把“检测手机”“建立信任调试关系”“安装基座”分成独立步骤实际上就说明这几条链路不是一回事。再往深一点说Unknown往往意味着设备被发现了但某些设备属性没拿全或设备虽在线但授权/属性读取/驱动识别不完整所以它更像一个“链路异常信号”而不是最终错误本身。✅️问题预测基于你的现象我给一个概率排序方便你优先排查高概率小米 15 的 USB 调试授权链没有真正建立成功USB安装 / USB调试安全设置没真打开或未生效ADB 被其他软件占用HBuilderX 没拿到设备控制权HBuilderX 自带 adb 对新机型兼容一般需要更换高版本 adb中概率5.Windows 对小米 15 的驱动映射异常6.基座装上了但被系统拦截启动或后台限制7.HyperOS 安全策略导致静默失败低概率8.你的项目代码导致真机运行卡住这个概率我认为较低因为你当前的症状更像“手机链路没打通”而不是“页面逻辑崩了”。✅️小结我给你一个最实战的结论版你这个问题80% 以上概率出在“小米 15 这台设备的 ADB 授权/USB 安装/安全设置/驱动识别”上10%~20% 概率是“新机型 HBuilderX 自带 adb 版本或 adb 被占用”的组合问题。所以最有效的处理顺序是撤销 USB 调试授权重插线重新弹 RSA 授权框把小米 15 的USB调试、仅充电允许ADB、USB安装、USB调试安全设置全部确认打开在 HBuilderX 自带 adb 目录执行adb devices -l杀掉所有 adb 冲突进程必要时替换成新版 adb还是不行就直接走 HBuilderX 的无线调试 结语 互动说明希望以上分析与解决思路能为你当前的问题提供一些有效线索或直接可用的操作路径。若你按文中步骤执行后仍未解决不必焦虑或抱怨这很常见——复杂问题往往由多重因素叠加引起欢迎你将最新报错信息、关键代码片段、环境说明等补充到评论区我会在力所能及的范围内结合大家的反馈一起帮你继续定位 如果你有更优或更通用的解法非常欢迎在评论区分享你的实践经验或改进方案你的这份补充可能正好帮到更多正在被类似问题困扰的同学正所谓「赠人玫瑰手有余香」也算是为技术社区持续注入正向循环 文末福利技术成长加速包 文中部分问题来自本人项目实践部分来自读者反馈与公开社区案例也有少量经由全网社区与智能问答平台整理而来。若你尝试后仍没完全解决问题还请多一点理解、少一点苛责——技术问题本就复杂多变没有任何人能给出对所有场景都 100% 套用的方案。如果你已经找到更适合自己项目现场的做法非常建议你沉淀成文档或教程这不仅是对他人的帮助更是对自己认知的再升级。如果你还在持续查 Bug、找方案可以顺便逛逛我专门整理的 Bug 专栏《全栈 Bug 调优实战版》️这里收录的都是在真实场景中踩过的坑希望能帮你少走弯路节省更多宝贵时间。✍️如果这篇文章对你有一点点帮助欢迎给 bug菌 来个一键三连关注 点赞 收藏你的支持是我持续输出高质量实战内容的最大动力。同时也欢迎关注我的硬核公众号 「猿圈奇妙屋」获取第一时间更新的技术干货、BAT 等互联网公司最新面试真题、4000G 技术 PDF 电子书、简历 / PPT 模板、技术文章 Markdown 模板等资料通通免费领取。你能想到的绝大部分学习资料我都尽量帮你准备齐全剩下的只需要你愿意迈出那一步来拿。 Who am I?我是 bug菌热活跃于 CSDN | 掘金 | InfoQ | 51CTO | 华为云 | 阿里云 | 腾讯云 等技术社区CSDN 博客之星 Top30、华为云多年度十佳博主/卓越贡献者、掘金多年度人气作者 Top40掘金、InfoQ、51CTO 等平台签约及优质作者全网粉丝累计30w。更多高质量技术内容及成长资料可查看这个合集入口 点击查看 ️硬核技术公众号「猿圈奇妙屋」期待你的加入一起进阶、一起打怪升级。- End -
返回列表