情况:“运行”->“运行到手机或模拟器”->“运行到Android App基座”可以成功,但是运行时一直卡在“正在建立手机连接…”。
终于找到解决办法如下:
以下为个人操作步骤:
环境:MacOS
1、通过HbuilderX菜单栏“帮助”->“查看运行日志”,确实存在类似提示。
2、查看设备列表
上图为“无线调试”的指令,我采用的是“USB调试”,因此输入以下命令来查看账户列表:
adb devices
(补充:无线调试对应的设备ip地址及端口号可以在手机“开发人员选项”->“无线调试”中查看)
返回command not found: adb。(不存在这个问题可以跳过3了)
3、配置adb
因为HbuliderX是自带adb的,所以是环境变量中没有adb路径。
(补充:ADB(Android Debug Bridge)是一种用于在计算机和安卓设备之间建立通信的命令行工具。它是安卓软件开发工具包(Android SDK)的一部分,允许开发者在开发和调试应用程序时与安卓设备进行交互。)
编辑环境变量配置文件:
(我的是zsh,如果是bash执行vi ~/.bash_profile)
vi ~/.zshrc
在打开的编辑器中,添加以下行,替换路径为实际的HBuilderX中ADB的路径(例如我的是 /Applications/HBuilderX.app/Contents/HBuilderX/plugins/launcher-tools/tools/adbs
):
export PATH="/Applications/HBuilderX.app/xxx"
保存退出,如果遇到保存不了可能是权限问题,可以执行以下指令并输入密码:
sudo vi ~/.zshrc
保存成功并退出后,在终端中执行以下命令来使刚刚的环境变量配置生效:
source ~/.zshrc
如果使用的是 zsh,执行 source ~/.bash_profile。
重新执行adb version 或者which adb可以发现成功了。
4、删除账户
重新查看设备列表(记得确保USB连上手机并且打开调试模式):
adb devices
返回List of devices attached 就是成功了,如果设备连接上,还会显示设备列表。
查看账户列表:
adb shell pm list users
例如我返回的是:
Users:
UserInfo{0:机主:4c13} running
UserInfo{100:平行空间:20000410}
(原来是它)
再删除对应账户(此处100为上面的id,根据实际情况修改):
adb shell pm remove-user 100
返回:
Success: removed user
成功,真机重新运行就可以了。