Hbuilder是一个非常好用的HTML5开发IDE,我最喜欢的功能就是连接手机调试了,连接手机调试有两种途径,一是通过USB连接真机,二是下载安装一个安卓模拟器,让Hbuilder连接到安卓模拟器,如果不怕麻烦的话,可以选择第一种方式,但是我总是不想用USB线连上我的又卡又慢的安卓机开发,因此我选择用安卓模拟器。

 

关于真机运行、手机运行、真机联调常见问题,官方网址http://ask.dcloud.net.cn/article/97

关于如何安装配置手机模拟器,官方网址http://ask.dcloud.net.cn/article/151,但是官网只给出了如何安装配置谷歌官方模拟器的方法,我们都知道这个模拟器给人的感觉比真机更卡更慢,因此我们一般选择第三方模拟器,开发者常用的是国外传进来的Genymotion模拟器,这个模拟器本身配置起来相当复杂,可自行百度,关于这个模拟器在Hbuilder上如何配置也有网友写了注意事项,手把手教你_如何实现HBuilder连接到genymotion的模拟器上。

在这里我要推荐几国内做的不错的安卓模拟器:海马玩模拟器和夜神模拟器

这两款模拟器的主要业务是让人们能在PC上玩安卓游戏,能实现全屏、鼠标、手柄操作等,运行速度非常快,我认为用来开发再合适不过了。

下载安装这两款模拟器作为开发者分分钟就能搞定。但是要想IDE连上模拟器就有很多注意事项了。

我们知道Hbuilder是通过adb(安装目录tools里面,或者从任务管理器进入)连接到模拟器或者真机的,但是系统中很多软件也会开启adb进程对Hbuilder产生影响。关于如何检查adb冲突,官网也给出了。

adb是什么?

Android 调试系统是一个面对客户服务系统,包括三个组成部分:

   •   一个在你用于开发程序的电脑上运行的客户端。你可以通过shell端使用adb 命令启动客户端。其他Android 工具比如说ADT 插件和DDMS 同样可以产生adb 客户端.

   •   在你用于发的机器上作为后台进程运行的服务器。该服务器负责管理客户端与运行

      于模拟器或设备上的adb守护程序(daemon)之间的通信。.

   •   一个以后台进程的形式运行于模拟器或设备上的守护程序(daemon)。.

当你启动一个adb客户端,客户端首先确认是否已有一个adb服务进程在运行。

如果没有,则启动服务进程。当服务器运行, adb服务器就会绑定本地的TCP

端口5037并监听adb客户端发来的命令,—所有的adb客户端都是用端口 5037

与adb服务器对话的.

接着服务器将所有运行中的模拟器或设备实例建立连接。它通过扫描所有5555

到5585范围内的奇数端口来定位所有的模拟器或设备。一旦服务器找到 了adb

守护程序,它将建立一个到该端口的连接。请注意任何模拟器或设备实例会取得

两个连续的端口——一个偶数端口用来相应控制台的连接,和一个奇数端口 用

来响应adb连接。比如说:

模拟器1,控制台:端口5554

模拟器1,Adb端口5555

控制台:端口 5556

adb 端口5557...

如上所示,模拟器实例通过5555端口连接adb,就如同使用5554端口连接控制台一样.

一旦服务器与所有模拟器实例建立连接,就可以使用adb命令控制和访问该实

例。因为服务器管理模拟器/设备实例的连接,和控制处理从来自多个adb客户

端来的命令,你可以通过任何客户端(或脚本)来控制任何模拟器或设备实例.

 

来源: <http://bbs.hiapk.com/thread-4760331-1-1.html>

 
 

检查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: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。
3)解决冲突:
一般发生冲突是,任务管理器的进程里会出现多个adb.exe,或kadb.exe、tadb.exe。。。
在任务管理器中找到adb.exe相关进程,在任务管理中右键该进程,打开文件位置,查看该进程是什么软件启动的。
如果adb.exe不是HBuilder安装目录下的文件,一般可以用以下方案解决冲突:
1、有些软件这种进程是可以设置成不自动启动的,各个软件设置不一样,设置完成后关闭软件就自动退出了
2、在任务管理器中结束该进程
3、有些软件该进程结束后又会被自动启动,所以得将adb.exe文件重命名一下

 

来源: <http://ask.dcloud.net.cn/article/97#checkAdb>

 

 

由于adb冲突问题,如果先启动Hbuilder,IDE自带的adb会启动监听5037端口,再启动安卓模拟器的话,模拟器自带的adb(你在模拟器的安装目录下总能找到adb.exe)

也会启动,这样就把Hbuilder的adb服务给挤下去了。因此这是Hbuilder就识别不了模拟器了。好在Hbuilder的新版本已经解决部分这种问题了,这个问题在连接海马玩模拟器时也不会出现了,无论先启动哪一个都能识别。

 

但是夜神模拟器却不能被Hbuilder识别,原因是夜神模拟器的开发者将adb.exe改成了nx_adb.exe,这样Hbuilder就检查不到冲突了,解决方法是将这个重命名或者剪切到其他地方,或者干脆删除,不会对模拟器产生任何影响。但是我发现即使这样做了。Hbuilder还是连接不上夜神模拟器,原因是夜神模拟器的运行端口不在Hbuilder的adb的扫描范围内。那么如何找到端口呢。

在夜神模拟器正在启动或刚启动时(真的是刚启动,时间长了就不行了,也不知道是为什么),在CMD中运行:nox_adb devices,注意这事nox_adb还没有重命名或移走,是在nox_adb所在目录运行命令,这样会列出nox_adb连接的终端地址是127.0.0.1:62001;执行完这个操作后就将nx_adb重命名或者移走,接下来就要让Hbuilder的adb连接到模拟器,定位到Hbuilder的adb目录,运行下面的第一条命令就连接上了模拟器,第二条命令是检查连接设备及状态。后面显示device即表示正常连接,如果不进行前面的一系列操作,直接连上127.0.0.1:62001的话,设备状态会显示offline,Hbuilder内识别模拟器但是不能正常连接调试。

Hbuilder连接模拟器调试的更多相关文章

  1. hbuilder 夜神模拟器调试方法

    1.首先下载好夜神模拟器2.查找已经安装的夜神模拟的端口,这里说一下夜神模拟器默认端口是62001,但是有些版本可能不是这个端口,怎么查找到底是哪个端口呢?按照如下顺序进行就可以查找到你按装的夜神模拟 ...

  2. hbuilder连接模拟器进行联调(逍遥模拟器,MuMu模拟器,夜神模拟器)

    MuMu模拟器:7555 逍遥模拟器:21503 夜神模拟器:62001 1. 2. 3. 如果上诉方法不好使,可以重启模拟器以及hbuilder,有时可能连接中断,可以重新连接.

  3. 使用 Hbuilder 连接手机调试移动端项目

    点击界面上的浏览器右侧的倒三角.   弹出列表以后,点击最后一行 “设置web服务器...”.继续弹出,点击右下角的“外置Web服务器设置”.   点新建.   弹出框后,填入“名称”和“浏览器运行U ...

  4. 夜神模拟器与HBuilder连接/cmd运行提示符/执行夜神模拟器命令/执行HBuilder命令

    第一步:启动HBuilder和夜神模拟器 第二步:通过运行电脑命令CMD进入(电脑运行命令的快捷键是:windows键+R2.Ctrl键与Alt键之间的那个键就是windows键或者点击左下角开始图标 ...

  5. androidkiller连接模拟器并修改源码调试

    首先需要连接模拟器,首先在模拟器的bin目录下运行命令:nox_adb.exe connect 127.0.0.1:62001(可以disconnect关闭): 之后在androidkiller的bi ...

  6. win 10 Hbuilder1.2.1连接Genymotion 调试Android 软件

    这里记录一下 Hbuilder1.2.1连接Genymotion 调试Android 软件 的过程: 步骤一:把Genymotion 的 adb.exe 路径配置到 Hbuilder 中 在 菜单栏 ...

  7. 使用MuMu模拟器调试AndroidStudio项目

    1.安装一款安卓模拟器 ​ 本例使用网易MuMu模拟器,因为目前网络上这类模拟器只有mumu的安卓版本是最新的,为6.0,安卓自带的Virtual Device虽然有很新的版本,但如果pc配置不是很高 ...

  8. Windows 下 Hbuilder 真机调试(Android,iphone)

    概述:主要讲讲自己在使用 HBuilder 真机调试功能时遇到的问题,以及如何解决.Android 相对没有遇到什么大问题,在电脑安装如360手机助手就可以正常使用了,主要问题是在 iphone 上( ...

  9. Flutter Android 真机器调试 、模拟器调试、Vscode 中开发 Flutter 应用

    必备条件: 1.准备一台 Android 手机 2.手机需要开启调试模式 3.用数据线把手机连上电脑 4.手机要允许电脑进行 Usb 调试 5.手机对应的 sdk 版本必须安装 注意: 1.关闭电脑上 ...

随机推荐

  1. (转) Docker swarm - 使用体验 1+2

    背景 凭借敏捷开发部署理念的推行,相信对于很多人来说docker这项容器技术已经并不陌生,Docker 1.12引擎发布了快两个月,新引擎中包含了许多特性.诸如: Swarm模式,容器集群的健康检查, ...

  2. poj 1276

    一道DP的题目,还是一道多重背包的题目,第一次接触. 题意:有现今cash,和n种钱币,每种钱币有ni个,价值为di,求各种钱币组成的不超过cash的最大钱数 思路:可以转换为0/1背包和完全背包来做 ...

  3. C++实现双缓冲

    首先声明下,这篇资料也是整理别人的资料的基础上,总结来的. 在图形图像处理过程中,双缓冲技术是一种比较常见的技术.窗体在响应WM_PAINT消息时,需要对图像进行绘制处理.如果图像绘制次数过多,重绘过 ...

  4. Storm集群的安装配置

    Storm集群的安装分为以下几步: 1.首先保证Zookeeper集群服务的正常运行以及必要组件的正确安装 2.释放压缩包 3.修改storm.yaml添加集群配置信息 4.使用storm脚本启动相应 ...

  5. perl q qq qr qw qx 区别与使用方法

    1.q 相当于 单引号' ' 转义字符无效 q可以使用()[] {} // ,, 2.qq 相当于" " 转义字符有效 qq可以使用()[] {} // ,, 3.qw  相当于 ...

  6. bootstrap 重写JS的alert、comfirm函数

    原理是使用bootstrap的Modal插件实现. 一.在前端模板合适的地方,加入Modal展现div元素. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ...

  7. 关于CentOS普通用户无法登录SSH问题

    在CentOS中,假若一切都顺利的话,你建新一个用户,它就自动添加到SSHD登录服务中的处的了,不必手动或再设置什么,但有些情况下,我们的系统只允许root用户登录,那么,我们就要进行一些必要的设置, ...

  8. Effective C++ -----条款17:以独立语句将newed对象置入智能指针

    以独立语句将newed对象存储于(置入)智能指针内.如果不这样做,一旦异常被抛出,有可能导致难以察觉的资源泄露.

  9. 使用json格式输出

    /** * json输出 * * @param unknown_type $info */ public function json_out ($info) { header('Content-typ ...

  10. 更新补丁Bind

    1.查询补丁版本信息 (1) rpm -qa|grep bind (2) dig @localhost version.bind 2.下载安装 BIND最新漏洞和升级解决办法 现在有非常多的公司的都有 ...