HBuilder/HBuilderX真机运行、手机运行、真机联调常见问题

**

前言

**
请首先保证iTunes或Android手机助手(如360手机助手)可以正常连接手机,如果仍有问题请查阅以下问题是否与自己遇到的情况相同
特别注意**:
iOS13真机运行,需要升级至HBuilderX 2.2.5+以上版本。
Android11系统真机运行,暂不支持Android Studio自带的Android11模拟器,请使用真实手机,如果碰到Android11手机无法真机运行,请单独发帖,并提供详细设备信息。
出现问题手机分析清楚问题在哪个环节。
从在HBuilder/HBuilderX菜单里点真机运行,程序会执行如下几个步骤:

1.手机硬件通过usb线连接到HBuilder所在电脑,此时可能因为手机驱动、usb口、数据线、手机硬件等多种问题造成连接失败。

2.HBuilder通过adb或itunes服务检测手机。此时可能因为手机渠道、usb连接设置、adb设置或adb冲突、itunes设置造成检测不到。

  1. HBuilder安装调试基座到手机。此时可能因为手机禁止usb安装、Android手机没有sd卡、iOS手机没有信任证书而安装失败。
  2. HBuilder将ide中的代码同步到手机上并启动调试基座。这一步一般不会出问题。

下面把各种常见FAQ列出,大家可按图索骥

1. 没有运行到手机的菜单

真机运行只能运行App项目,选中App项目或将焦点放在将要运行的App项目的文件编辑器上。
HBuilderX支持web项目和app项目,项目前面是有图标的,W表示web项目,A表示App项目。其中只有App项目可以运行。
HBuilderX支持项目类型较多,只有uni-app、5+app、wap2app可以真机运行。他们都会在项目根目录下有个manifest.json文件(uni-cli项目会在src目录下有manifest.json)。

2. 检查手机设置

特别注意:Windows连接Android手机,一定要确保电脑已安装相应的手机驱动。
1确保数据线或usb口正常,可替换不同的线或口来验证。
2.确认Android手机设置中USB调试模式已开启。这个设置一般在【设置】【开发者选项】里。有的手机在插上数据线后在push通知栏里也可以设置。注意不能设置为u盘模式,如果是充电模式则必须同时设置充电时允许usb调试。
3.如手机屏幕弹出需信任本计算机的询问,请同意该授权。并且最好是把始终同意该设备调试勾上。如不小心拒绝,需要重插手机或重启电脑。
4.Android5.0及以上系统,不要使用访客模式。这种模式下无法成功运行。
5.部分手机如小米,有usb安装应用的权限设置,需在手机上允许通过usb安装应用。不同rom的界面不一样,请自行百度你的手机打开usb安装应用的方式。

3. Mac 连接手机/模拟器说明

分Android和iOS手机分别列出排查方式:
3.1 Mac: iOS真机

  1. 确认手机已通过数据线连接电脑.
  2. 确认iTunes能正常连接手机.
  3. 如手机屏幕弹出需信任本计算机的询问,请同意该授权
    3.2 Mac: iOS模拟器
  4. Xcode必须安装在应用程序(Application)中.
    2.首先确认Xcode(版本必须是6.0及以上版本)已安装并能正常启动模拟器.
    3.如果仍然无法检测到,则打开Xcode,然后打开Xcode的 Preferences --> Locations,设置该界面中的 Command Line Tools 项,选择正确的Xcode版本即可
    在这里插入图片描述

3.2 Mac: 连接Android手机
关于本机(指Mac系统的关于本机,非手机) --> 系统报告 -> usb -> 你所连接的device --> 厂商ID或者供应商ID(Vendor ID)
在终端执行如下命令:echo xxxxxx >> ~/.android/adb_usb.ini (“xxxxxx”为厂商ID或者供应商ID(Vendor ID),有些系统下echo命令并不能正确写入文件,可在~/.android/目录下修改或新建adb_usb.ini添加xxxxxx)
重启HBuilderX。
如重启HBuilderX仍然不行,请使用命令行(终端.app),切换到HBuilderX自带的adb目录。
HBuilderX正式版的adb目录位置:tools/adbs目录(MAC下为HBuilderX.app/Contents/tools/adbs目录)
HBuilderX Alpha版的adb目录位置:plugins/launcher/tools/adbs目录(MAC下为/Applications/HBuilderX-Alpha.app/Contents/HBuilderX/plugins/launcher/tools/adbs目录)
在adbs目录下运行./adb kill-server重试。
重启电脑重试。
4. Windows 连接手机/模拟器说明
4.1 Windows: 连接Android手机
4.1.1 驱动:
确认已安装Android手机驱动。

如果手机连接没有任何反应或提示驱动问题,可通过以下方式解决:

安装驱动精灵类程序,通过它们来安装驱动
装驱动比较好的方式是使用各种手机助手,比如360、腾讯的各种手机助手,如果有问题,尝试升级助手的版本。
4.1.2 其它注意事项:
如果在启动HBuilderX后才安装驱动连接上手机,可能需要重启HBuilderX。
使用管理员权限运行HBuilder。
关闭WebView调试模式,重启HBuilderX重试。
如果其他软件可以连接手机,而HBuilderX无法检测到手机,可能是其他软件独占了Google的ADB服务通道。
Android的ADB服务已经被大量软件滥用,除了各种手机助手自带adb,其他如QQ、搜狗输入法、暴风影音、酷狗音乐、阿里旺旺等众多软件都自带adb。有些工具的adb版本低且独占手机通道,就会导致HBuilderX无法连接手机。
在任务管理器中找到adb.exe相关进程(包括kadb.exe等),在任务管理中右键该进程,打开文件位置,查看该进程是什么软件启动的。
禁止这些软件监听手机插入(一般在该软件的设置中)、禁止自动启动。
有些软件结束adb进程后又会自动启动,所以得将adb.exe文件重命名一下,实在不行卸载了这些流氓软件。
关闭所有手机助手及进程里各种adb.exe(包括kadb.exe等),再试。
4.1.3 adb占用问题
如果你找不到被谁占用,则还可以使用如下方式检测,寻找幕后黑手:

打开命令行窗口
确认adb的启动进程:
寻找端口是5037的tcp连接,在命令行中输入:netstat -ano | findstr 5037 在输出结果中找到类似下面的一行:
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 5816
如果内容为空,可能是没有程序在占用adb端口。 或者使用 netstat -ano | findstr 5037>d:/1.txt 输出到文件中查找。
根据查询结果确认端口为5037的连接被那个进程占用,结果中显示的“5816”表示占用adb端口的进程PID。
根据进程的PID可以找到具体进程。 在命令行中输入:tasklist | findstr 5816
在输出结果中找到类似下面的一行:
adb.exe 5816 Console 0 4,440 K
adb.exe(名称一般不是adb.exe,以adb.exe举例)为启动的adb进程。
或者手工在任务管理器中定位这个进程,打开任务管理器后,进入进程选项卡,如果列表里有PID,直接找;如果列表里没有PID,点菜单查看-选择列,勾上PID。
4.1.4 其它问题
如果以上方式仍然不行,还有一种可能是手机对adb的版本有特定要求(遇到一些魅族手机有此问题),此时需要更换HBuilder的adb版本。

HBuilder安装目录下带了多个版本的adb。
HBuilder的adb目录位置:tools/adbs目录(MAC下为HBuilder.app/Contents/tools/adbs目录)
HBuilderX的adb目录位置:plugins/launcher/tools/adbs目录(MAC下为/Applications/HBuilderX-Alpha.app/Contents/HBuilderX/plugins/launcher/tools/adbs目录)
替换版本前,将默认版本的adb.exe备份下。然后把1.0.31版的adb.exe拷贝出来替换主目录下的exe。
4.2 Windows: 连接iOS手机
确认手机已通过数据线连接电脑
确认已安装iTunes,若未安装点击[itunes历史版本下载地址, 请下载12.9.4.102之前的版本
确认iTunes能正常连接手机
如手机屏幕弹出需信任本计算机的询问,请同意该授权
如果是第一次安装完itunes,建议重新启动HBuilderX
如果以上方案都无法解决,有可能是因为本地库与iTunes带的库冲突了,一般是iTunes库目录(32位系统目录为:C:\Program Files\Common Files\Apple\Apple Application Support,64位系统目录为:C:\Program Files (x86)\Common Files\Apple\Apple Application Support)下的dll文件和系统库目录(32位系统目录为:C:\WINDOWS\system32,64位系统目录为:C:\Windows\SysWOW64)下的dll重名,可将iTunes库目录下的同名dll文件拷贝到系统库目录下,或者将系统目录下的同名dll文件重命名或删除,然后再重启HBuilder或者重试真机运行
有可能是iTunes安装时依赖库丢失,尝试重装iTunes解决问题
iTools提供了一个修复驱动的工具和教程,可以参考http://bbs.itools.cn/thread-129390-1-1.html
注意1:

itunes 12.10.9.3版本,连接ios 14+的iphone手机,可能存在问题。

如无法连接,请下载itunes历史版本。 itunes历史版本下载地址

注意2:

iTunes12.1起更改了接口,会造成无法连接:
①、HBuilderX菜单:工具 - 插件安装,打开插件安装界面,选择【iOS连接插件】(HBuilderX叫做真机运行插件)并安装,安装完并重启HBuilderX,尝试是否解决;
②、安装最新版本的iTools,重启HBuilderX。

  1. 其它问题
    Q1: 能检测到手机,但处于置灰状态无法点击
    发生此情况一般为检测到手机后,中间因为其他软件连接断开了,需要重新插拔手机或重启HBuilderX。

Q2: 能检测到手机,但点HBuilder的真机运行,安装调试基座失败
部分Android rom如小米有usb安装apk的权限,可能是关闭状态,此时需要在手机管家等设置里寻找usb安装apk的权限,将其打开。
部分Android手机在usb安装apk时,会在手机界面上弹框,如果不能及时点弹框,会因为超时而安装失败。请注意手机屏幕的显示。
当HBuilder控制台提示“安装HBuilder基座App失败,请使用手机助手手动安装xxx\android_base.apk。”时,基本都属于这种情况。
iOS版本偶发也会报错。同样需要根据提示手动安装iPhone_base.ipa。安装方式推荐itools,没有itools使用itunes也可以。
安装完毕后,会在手机上有一个HBuilder的应用。
以后再点真机运行,就可以把项目部署到手机上,然后手动点击HBuilder应用,就能看到项目的结果。
Q3: HBuilder控制台不输出日志问题的解决办法
参考http://ask.dcloud.net.cn/article/1336

Q4: Android手机真机运行提示应用安装成功,但是其实手机上并没有HBuilder应用
确认USB调试模式是否打开。如果未打开,请打开USB调试模式重新运行真机调试。
如果HBuilder已经检测到手机,可能存在与手机助手冲突的情况,请关闭所有的手机助手重新运行真机调试。
利用手机助手手动安装android_base.apk到手机上,然后重新运行真机调试。
Q5: Android真机联调报文件操作Permission denied
请尝试以下方法解决:
1、拔出数据线
2、重新打开USB调试模式
3、重新插上数据线,此时手机上可能需要授权确认,点击确认
4、重新运行真机调试看看是否还有问题
5、重启手机,再重新运行真机调试,看看问题是否解决
6、如果还有问题,重新启动HBuilder,重复1-4步骤,再重新运行真机调试,看看问题是否解决
7、如果问题仍然没有解决,则重新安装手机驱动:
1)我的电脑—右键–属性–硬件—设备管理器–删除USB驱动
2)打开手机助手重新安装驱动
此时手机上可能需要授权确认,点击确认,然后再重新运行真机调试
8、如果以上方案均无法解决,则有可能是手机root的时候,把sdcard目录的权限搞错了,导致无法真机运行,此时可以恢复出厂设置,或者重新root,或者刷机解决此问题

Q6: Android真机联调报:open ‘/dev/hwlog_switch’ fail -1, 13. Permission denied
请尝试以下方法解决:
1、参考 http://ask.dcloud.net.cn/article/1336
2、拔插数据线重试
3、重新打开USB调试模式重试
4、重启手机重试
5、重新启动HBuilder重试
6、如果以上方案均无法解决,则有可能是手机root的时候,把sdcard目录的权限搞错了,导致无法真机运行,此时可以恢复出厂设置,或者重新root,或者刷机解决此问题

Q7: 为什么Android手机没有SDCard就不能真机调试?
Android没有root的手机只有SDCard才有权限。不过此SDCard并不是非得外插一张实体sd卡,是手机里一个叫SDCard的根目录。
如果是使用Android模拟器,在模拟器里可以配置SDCard是否存在及大小。
此情况已过期,目前正常手机都有SDCard目录。

Q8: 控制台显示手机应用已启动,但手机屏幕上没有出现?
Android手机第一次安装基座应用时,手机端大多有各种杀毒软件要检测一会才会放行,需要等一会。

Q9: 5+App运行后手机端一直在启动画面停留,不停转圈不能进入
这是应用的js代码的问题,启动画面的关闭是可配置的。参考 http://ask.dcloud.net.cn/article/110

Q10: 为什么我电脑没有插iphone,但HBuilder检测到iOS设备?
iTunes支持wifi同步,如果iOS设备启动了wifi同步,电脑端的iTunes就可以检测到,进而HBuilder也可以检测到。

Q11: 真机运行成功启动,但手机端软件启动后显示的不是正在运行的项目。
这种情况是adb连接手机成功,但copy项目文件到手机上失败了。重新运行真机调试。
或者检查待运行工程的目录名文件名是不是有特殊符号或超长导致Android不识别。

Q12: 真机运行启动后显示HBuilder真机运行(log)界面 {#synchronous}
1、重新运行真机调试尝试解决问题
2、Android设备可能存在与手机助手冲突的情况,请关闭所有的手机助手重新运行真机调试
3、如果步骤2无法解决,请更换别的手机助手,重新运行真机调试尝试解决问题
4、确认手机上HBuilder应用安装位置,如果手机上有外置sdcard,不要把HBuilder基座App安装在外置sdcard上,如果是安装在外置sdcard上,卸载外置sdcard上的HBuilder基座App,并在设置中将应用的默认安装位置不要设置为外置的sdcard上,或者将应用转移至手机内存或内置sdcard上,并重新运行真机调试

Q13: 使用genymotion模拟器真机运行,安装apk时报INSTALL_FAILED_CPU_ABI_INCOMPATIBLE
参见genymotion模拟器报INSTALL_FAILED_CPU_ABI_INCOMPATIBLE的解决办法
其他模拟器的适配在论坛中搜索即可。

Q14: 如何通过wifi真机运行,不插数据线?
参考http://ask.dcloud.net.cn/article/565

26 赞 关注 分享
keke007 为人民服务 安安的eHome 后海 藏0羊 扯淡1992 Trust 474565262@qq.com lbp608@126.com 1364625811@qq.com JustinLiu DCloud_HB_WDL 18310417371@163.com lifeng_dev 870545207@qq.com 1632605801@qq.com xie_s@126.com 1583229743@qq.com 108549337@qq.com 13555962118@163.com 122659963@qq.com 含光 535715377@qq.com 676167227@qq.com 465982707@qq.com 取名好难啊
441 个评论
要回复文章请先登录或注册

望书
望书

电脑:为win7;
手机:Iphone 6s plus (12.3.1)/ Iphone11(14.4.1);
itunes:12.9.2.6 64位 ;
HbuilderX:3.1.7.20210330;
未更新 HbuilderX 之前(之前具体是哪个版本记不得了);
Iphone 6s plus / Iphone11均能正常连接手机,更新代码;
现在 Iphone 6s plus正常使用;

Iphone11 itunes无法连接手机,提示需要更新,HbuilderX 可以找到手机,可安装基座,提示同步完成;
基座打开后提示:本应用无法独立运行,需与HbuilderX 搭配使用。
21 小时前
守护
守护

macos big sur(11.2.3)
HBuilderX 3.1.10
真机运行到iPhone 5后,一直卡在安装安装基座过程,就是不同步代码。
part1:以下是控制台信息
22:41:06.782 项目 ‘test’ 开始编译…
22:41:08.077 编译器版本:3.1.10(v3)详见:https://ask.dcloud.net.cn/article/36599。
22:41:08.081 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
22:41:08.329 正在编译中…
22:41:52.946 DONE Build complete. Watching for changes…
22:41:52.953 项目 ‘test’ 编译成功。
22:41:53.261 正在建立手机连接…
22:41:53.694 正在安装手机端自定义基座…

part2:以下是一次完整的真机运行日志:
2021-04-27 22:41:07.363 [INFO:] node “/Applications/HBuilderX-Alpha.app/Contents/HBuilderX/plugins/node/node”
2021-04-27 22:41:07.363 [INFO:] args ("–max-old-space-size=2048", “/Applications/HBuilderX-Alpha.app/Contents/HBuilderX/plugins/uniapp-cli/bin/uniapp-cli.js”)
2021-04-27 22:41:52 [LanguageServerProcess] macos version:10.16
2021-04-27 22:41:53 [LanguageServerProcess] /var/folders/dd/b66kk_ds7_1_sxt1w7t8c6z80000gn/T/.HBuilderX/iOS_debug.ipa
2021-04-27 22:42:22.978 [WARNING:] Request Timeout( 30000 )!!! when: “launcher/runDevice”
2021-04-27 22:48
3026546679@qq.com
3026546679@qq.com

回复 825057001@qq.com :
好像苹果的版本还有问题
2021-04-27 11:02
tuhaoweishao@qq.com
tuhaoweishao@qq.com

iphone8,正常使用一天后,第二天发现保存代码,真机运行中的应用并没有同步,怀疑是缓存的问题,把手机中的hbuildXAPP删掉后,重新真机运行,重新安装,后一直显示Hbuilder真机运行界面,换其他iphone正常,请问怎么解决
2021-04-26 13:42
825057001@qq.com
825057001@qq.com

编辑器说:确认已安装iTunes,若未安装点击[itunes历史版本下载地址, 请下载12.9.4.102之前的版本
iTunes说,要连接手机,请更新版本至12.10.5之后
所以我win10真机调试ios到底该怎么搞.。。
2021-04-26 11:42
守护
守护

macos big sur(11.2.3) 连接iPhone 5

HBuilderX 3.1.10

16:42:06.150 项目 ‘test’ 开始编译…
16:42:07.628 编译器版本:3.1.10(v3)详见:https://ask.dcloud.net.cn/article/36599。
16:42:07.635 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
16:42:07.858 正在编译中…
16:43:09.258 DONE Build complete. Watching for changes…
16:43:09.258 项目 ‘test’ 编译成功。
16:43:09.734 正在建立手机连接…
16:43:09.951 正在安装手机端自定义基座…

一直出现在正在安装手机端自定义基座…,出现不了后续同步等操作。

ps:安卓,iPhonex系列,iPhone4都可以成功安装并同步。
2021-04-25 16:56
534153953@qq.com
534153953@qq.com

安卓11谷歌定制了全新的文件存储和读写规则,/Android/data和obb目录不能被系统和第三方文件管理读写,包括微信保存图片也已经移出来到/Pictures/WeiXin文件夹中了。Q5Q6的方法我全都试过了,反正还是不行,我宁可相信谷谷歌对/Android/data的说明
2021-04-21 15:04
inyoor@qq.com
inyoor@qq.com

回复 辉哥哥 :
没,只能先用低系统的了
2021-04-19 15:46
天字第一号
天字第一号

windows,由于开发flutter需要,配置了adb,然后hbuilderx报错使用了自定义adb,在设置中修改adb路径后重新运行无效,重启hbuilderx后生效,建议官方在设置或者是在报错中增加说明,需要重启hbuilderx
2021-04-17 10:21
2501859535@qq.com
2501859535@qq.com

回复 unicorn_up :
我小米8也一直这样
2021-04-13 14:56
1234>>>
目录
特别说明
如果此帖没有解决您的问题,回帖时,请详细描述:电脑操作系统、手机系统(anroid、ios)、手机系统版本号、或手机型号。
您只有描述清问题,别人才能更快帮到您。
联系方式
前言

  1. 没有运行到手机的菜单
  2. 检查手机设置
  3. Mac 连接手机/模拟器说明
    3.1 Mac: iOS真机
    3.2 Mac: iOS模拟器
    3.2 Mac: 连接Android手机
  4. Windows 连接手机/模拟器说明
    4.1 Windows: 连接Android手机
    4.1.1 驱动:
    4.1.2 其它注意事项:
    4.1.3 adb占用问题
    4.1.4 其它问题
    4.2 Windows: 连接iOS手机
  5. 其它问题
    Q1: 能检测到手机,但处于置灰状态无法点击
    Q2: 能检测到手机,但点HBuilder的真机运行,安装调试基座失败
    Q3: HBuilder控制台不输出日志问题的解决办法
    Q4: Android手机真机运行提示应用安装成功,但是其实手机上并没有HBuilder应用
    Q5: Android真机联调报文件操作Permission denied
    Q6: Android真机联调报:open ‘/dev/hwlog_switch’ fail -1, 13. Permission denied
    Q7: 为什么Android手机没有SDCard就不能真机调试?
    Q8: 控制台显示手机应用已启动,但手机屏幕上没有出现?
    Q9: 5+App运行后手机端一直在启动画面停留,不停转圈不能进入
    Q10: 为什么我电脑没有插iphone,但HBuilder检测到iOS设备?
    Q11: 真机运行成功启动,但手机端软件启动后显示的不是正在运行的项目。
    Q12: 真机运行启动后显示HBuilder真机运行(log)界面 {#synchronous}
    Q13: 使用genymotion模拟器真机运行,安装apk时报INSTALL_FAILED_CPU_ABI_INCOMPATIBLE
    Q14: 如何通过wifi真机运行,不插数据线?
    公告更多>
    2021插件大赛和行业服务商招标启动!200万元等你来分!
    云端一体提升10倍开发效率 ;HBuilderX 3.1,强化nvue css、新增uni_module;部分网络打不开DCloud网址请修改DNS
    插件大赛2020评奖结果揭晓,这些优秀的插件你都用起来了吗?
    众多抗疫开源项目案例; uni-AD发布,广告收益大幅提升; uniCloud,用js搞定服务端开发;uni统计月活10亿;HBuilderX 2.7发布插件开发API,下线非v3编译器
    跨端开发框架深度横评之2020版
    相关问题
    IOS无法真机联调,安装失败 return code=-402653081
    【报Bug】今天更新了HBuilderX,运行到真机提示java.net.ConnectException: Connection refused
    【报Bug】真机联调卡死
    HbuilderX真机运行为何无法实时编译(热更新)?
    HBuilder启动调试基座时卡在43%,无法联调
    HBuilderX真机运行问题
    广告
    广告
    友情链接
    W3Cschool 优势智云 黑马程序员 layui前端框架 程序员客栈 个推 锐亚教育 撩课教育 即速应用 上线了小程序 慕课网 DCloud新闻 InfoQ 美信拓扑 申请友链

DCloud 即数字天堂(北京)网络技术有限公司是W3C成员及HTML5中国产业联盟发起单位

京ICP备12046007号-4

Powered By WeCenter 2.5.8 | 商务合作:bd@dcloud.io、广告投放

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曹筱君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值