美文网首页
真机运行、手机运行、真机联调常见问题

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

作者: AmberSiYing | 来源:发表于2018-11-16 11:38 被阅读0次

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

    真机运行AppHBuilder

    请首先保证iTunes或Android手机助手(如360手机助手)可以正常连接手机,如果仍有问题请查阅以下问题是否与自己遇到的情况相同

    出现问题手机分析清楚问题在哪个环节。

    从在HBuilder菜单里点真机运行,要经历几个步骤:

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

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

    3. HBuilder安装调试基座到手机。此时可能因为手机禁止usb安装、Android手机没有sd卡、iOS手机没有信任证书而安装失败。

    4. HBuilder将ide中的代码同步到手机上并启动调试基座。这一步一般不会出问题。

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

    Q:HBuilder检测不到手机

    A

    真机运行只能运行移动App项目,所以首先必须新建好移动App项目,并选中移动App项目或将焦点放在将要运行的移动App项目的文件编辑器上。HBuilder的项目前面都是有图标的,W表示web项目,A表示App项目。

    如果点击手机运行,HBuilder无法找到手机,尝试以下解决方案:

    Android设备:

    1)确认手机已通过数据线连接电脑

    2)如果是Windows系统,确认已安装Android手机驱动。装驱动比较好的方式是使用各种手机助手,比如360、腾讯的各种手机助手,如果有问题,尝试升级助手的版本。

    3)确认手机设置中USB调试模式已开启。这个设置一般在OS设置里的开发者选项里。有的手机在插上数据线后在push通知栏里也可以设置。注意不能设置为u盘模式或充电模式,必须是usb调试或usb数据访问模式。

    4)如手机屏幕弹出需信任本计算机的询问,请同意该授权。并且最好是把始终同意该设备调试的checkbox勾上

    5)Windows系统中,如果在启动HBuilder后才安装驱动连接上手机,可能需要重启HBuilder

    6)Windows系统中,如果手机助手正常连接,HBuilder无法检测到手机,可能是这个手机助手独占了Google的ADB服务通道,请关闭所有手机助手及进程里各种*adb.exe。(ADB是Google提供的Android手机与PC端通信的服务)

    7 ) 如果是Android5.0系统,不要使用访客模式。这种模式下无法成功运行。

    8)Windows系统中,使用管理员权限运行HBuilder

    9)Windows系统下,如果以上方案均无法解决,可能是其他软件带的adb与HBuilder冲突,点击检查冲突

    10)如果其他软件能检测到手机,但是HBuilder无法检测到,将HBuilder安装目录下的tools/adbs目录(MAC下为HBuilder.app/Contents/tools/adbs目录)下的文件备份,然后将tools/adbs/1.0.31目录下的文件拷贝到tools/adbs目录下,重启HBuilder(注:特别是魅族)

    11)关闭右侧的WebView调试模式,重启HBuilder重试

    12)Mac系统下,HBuilder无法检测到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)

    ③重启HBuilder

    ④如重启HBuilder仍然不行,请使用命令行(终端.app),cd到HBuilder.app/Contents/tools/adbs目录下运行./adb kill-server重试

    ⑤重启电脑重试

    iOS设备:

    1)确认手机已通过数据线连接电脑

    2)如果是Windows系统,确认已安装iTunes,若未安装点击下载iTunes

    注意iTunes12.1起更改了接口,会造成无法连接:①、HBuilder菜单:工具-插件安装,打开插件安装界面,选择iOS连接插件并安装,安装完并重启HBuilder,尝试是否解决;②、安装最新版本的ITools,重启HBuilder。

    3)确认iTunes能正常连接手机

    4)如手机屏幕弹出需信任本计算机的询问,请同意该授权

    5)如果是第一次安装完itunes,建议重新启动HBuilder

    6)如果以上方案都无法解决,有可能是因为本地库与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或者重试真机运行

    7)有可能是iTunes安装时依赖库丢失,尝试重装iTunes解决问题

    8)iTunes12.1及以上版本无法找到设备:①、HBuilder菜单:工具-插件安装,打开插件安装界面,选择iOS连接插件并安装,安装完并重启HBuilder,尝试是否解决;②、安装最新版本的ITools,重启HBuilder。

    9)iOS模拟器如果无法识别:

    ①:Xcode必须安装在应用程序(Application)中

    ②:首先用确认Xcode(版本必须是6.0及以上版本)已安装并能正常启动模拟器

    ③:其次将Xcode的应用名称(可能是Xcode-XXX、Xcode.XXX等)改为Xcode

    ④:如果仍然无法检测到,则打开Xcode,然后打开Xcode的 Preferences --> Locations,设置该界面中的 Command Line Tools 项,选择正确的Xcode版本即可

    排查问题有些方式虽然土,但没办法也要用:

    1.  换数据线、换usb口。数据线有时电压不足或接触不良,尝试重新插拔数据线或直接插入电脑USB口,使用普通的USB HUB很容易出现供电不足。

    2.  重启HBuilder、重启手机、甚至重启电脑。

    如果以上方案均无法解决,请联系QQ:804127452

    Q:能检测到手机,但点HBuilder的真机运行,无法安装调试基座

    1.部分Android rom如小米有usb安装apk的权限,可能是关闭状态,此时需要在手机管家等设置里寻找usb安装apk的权限,将其打开。

    2.部分Android手机在usb安装apk时,会在手机界面上弹框,如果不能及时点弹框,会因为超时而安装失败。请注意手机屏幕的显示。

    当HBuilder控制台提示“安装HBuilder基座App失败,请使用手机助手手动安装xxx\android_base.apk。”时,基本都属于这种情况。

    如果不是这个原因,就是无法通过HBuilder真机运行的adb安装调试基座,那也只能借助三方工具把HBuilder所在目录里的调试基座android_base.apk手动copy到手机上进行安装了。

    Q:检查adb冲突(windows系统)

    Android的ADB服务已经被大量软件使用,除了各种手机助手自带adb,其他如搜狗输入法、暴风影音、酷狗音乐、阿里旺旺等众多软件都自带adb。有些工具的adb服务版本低且独占手机通道,就会导致HBuilder无法连接手机。

    一般情况下,用户可以在软件的设置里取消该软件对手机的监控。

    还可以使用如下方式检测当前是哪个进程在占用Android手机通道。

    1)打开系统dos窗口:开始-运行(快捷键:win+r),输入cmd并回车

    2)确认adb的启动进程:

    寻找端口是5037的tcp连接,在dos中输入:netstat -ano | findstr 5037

    在输出结果中找到类似下面的一行:

    TCP    127.0.0.1:5037        0.0.0.0:0LISTENING5816

    如果内容为空,可能是没有程序在占用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。

    3)解决冲突:

    一般发生冲突是,任务管理器的进程里会出现多个adb.exe,或kadb.exe、tadb.exe。。。

    在任务管理器中找到adb.exe相关进程,在任务管理中右键该进程,打开文件位置,查看该进程是什么软件启动的。

    如果adb.exe不是HBuilder安装目录下的文件,一般可以用以下方案解决冲突:

    1、有些软件这种进程是可以设置成不自动启动的,各个软件设置不一样,设置完成后关闭软件就自动退出了

    2、在任务管理器中结束该进程

    3、有些软件该进程结束后又会被自动启动,所以得将adb.exe文件重命名一下

    Q:iPhone真机联调报安装失败 return code=

    A:确保HBuilder为最新版。

    iOS5目前确实在运行时会报错,其他iOS版本偶发也会报错。此时需要这样处理:

    在HBuilder安装目录的/plugins/com.pandora.tools.android_1.0.0.xxxx/base目录下(其中xxxx代表最新日期),手动安装iPhone_base.ipa。

    安装方式推荐itools,没有itools使用itunes也可以。

    安装完毕后,会在手机上有一个HBuilder的应用。

    以后再点真机运行,就可以把项目部署到手机上,然后手动点击HBuilder应用,就能看到项目的结果。

    Q:HBuilder控制台不输出日志问题的解决办法

    A:

    参考http://ask.dcloud.net.cn/article/1336

    Q:Android手机真机运行提示应用安装成功,但是其实手机上并没有HBuilder应用

    A:

    1. 确认USB调试模式是否打开。如果未打开,请打开USB调试模式重新运行真机调试。

    2. 如果HBuilder已经检测到手机,可能存在与手机助手冲突的情况,请关闭所有的手机助手重新运行真机调试。

    3. 利用手机助手手动安装HBuilder安装目录下的 plugins\com.pandora.tools.android_1.0.0.xxx(最新版本号)\base\android_base.apk到手机上,然后重新运行真机调试

    Q:Android真机联调报文件操作Permission denied

    A:请尝试以下方法解决:

    1、拔出数据线

    2、重新打开USB调试模式

    3、重新插上数据线,此时手机上可能需要授权确认,点击确认

    4、重新运行真机调试看看是否还有问题

    5、重启手机,再重新运行真机调试,看看问题是否解决

    6、如果还有问题,重新启动HBuilder,重复1-4步骤,再重新运行真机调试,看看问题是否解决

    7、如果问题仍然没有解决,则重新安装手机驱动:

    1)我的电脑---右键--属性--硬件---设备管理器--删除USB驱动

    2)打开手机助手重新安装驱动

    此时手机上可能需要授权确认,点击确认,然后再重新运行真机调试

    8、如果以上方案均无法解决,则有可能是手机root的时候,把sdcard目录的权限搞错了,导致无法真机运行,此时可以恢复出厂设置,或者重新root,或者刷机解决此问题

    Q:Android真机联调报:open '/dev/hwlog_switch' fail -1, 13. Permission denied

    A:请尝试以下方法解决:

    1、参考http://ask.dcloud.net.cn/article/1336

    2、拔插数据线重试

    3、重新打开USB调试模式重试

    4、重启手机重试

    5、重新启动HBuilder重试

    6、如果以上方案均无法解决,则有可能是手机root的时候,把sdcard目录的权限搞错了,导致无法真机运行,此时可以恢复出厂设置,或者重新root,或者刷机解决此问题

    Q:真机联调图标和启动图片如何更改?

    A:真机联调不是打包,资源都是DCloud预先打包好的,只有自己重新打包,才能更改图标、启动图片,这是原生应用的规范。

    如果是为了在手机浏览器上使用的WEB应用,还是应该使用手机浏览器来访问。HBuilder内置的web服务器地址配成192.168等内网地址,手机wifi连入,即可访问。

    更改HBuilder内置的web服务器地址请点击菜单工具-选项,展开左边的HBuilder-web服务器-内建服务器,在右边更改地址,需要重启HBuilder才生效

    Q:为什么Android手机没有SDCard就不能真机调试?

    A:Android没有root的手机只有SDCard才有权限。不过此SDCard并不是非得外插一张实体sd卡,是手机里一个叫SDCard的根目录。

    如果是使用Android模拟器,在模拟器里可以配置SDCard是否存在及大小。

    Q:控制台显示手机应用已启动,但手机屏幕上没有出现?

    A:Android手机第一次安装基座应用时,手机端大多有各种杀毒软件要检测一会才会放行,需要等一会。

    Q:运行后手机端一直在启动画面停留,不停转圈不能进入

    A:这个是应用的js代码的问题,启动画面的关闭是可配置的。参考http://ask.dcloud.net.cn/article/110

    Q:为什么我电脑没有插iphone,但HBuilder检测到iOS设备?

    A:iTunes支持wifi同步,如果iOS设备启动了wifi同步,电脑端的iTunes就可以检测到,进而HBuilder也可以检测到。

    Q:真机运行成功启动,但手机端软件启动后显示的不是正在运行的项目。

    A:

    1、这种情况是adb连接手机成功,但copy项目文件到手机上失败了。首先尝试重新运行真机调试。

    2、Android设备可能存在与手机助手冲突的情况,点击检查冲突

    3、确认手机上HBuilder应用安装位置,如果手机上有外置SDCard,不要把HBuilder基座App安装在外置SDCard上,如果是安装在外置SDCard上,卸载外置SDCard上的HBuilder基座App,并在设置中将应用的默认安装位置不要设置为外置的SDCard上,或者将应用转移至手机内存或内置SDCard上,并重新运行真机调试.

    Q:真机运行启动后显示HBuilder真机运行(log)界面

    A:

    1、重新运行真机调试尝试解决问题

    2、Android设备可能存在与手机助手冲突的情况,请关闭所有的手机助手重新运行真机调试

    3、如果步骤2无法解决,请更换别的手机助手,重新运行真机调试尝试解决问题

    4、确认手机上HBuilder应用安装位置,如果手机上有外置sdcard,不要把HBuilder基座App安装在外置sdcard上,如果是安装在外置sdcard上,卸载外置sdcard上的HBuilder基座App,并在设置中将应用的默认安装位置不要设置为外置的sdcard上,或者将应用转移至手机内存或内置sdcard上,并重新运行真机调试

    Q:使用genymotion模拟器真机运行,安装apk时报INSTALL_FAILED_CPU_ABI_INCOMPATIBLE

    A:

    参见genymotion模拟器报INSTALL_FAILED_CPU_ABI_INCOMPATIBLE的解决办法

    Q:如何通过wifi真机运行,不插数据线?

    A:

    参考http://ask.dcloud.net.cn/article/565

    相关文章

      网友评论

          本文标题:真机运行、手机运行、真机联调常见问题

          本文链接:https://www.haomeiwen.com/subject/abelfqtx.html