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连接模拟器调试的更多相关文章
-
hbuilder 夜神模拟器调试方法
1.首先下载好夜神模拟器2.查找已经安装的夜神模拟的端口,这里说一下夜神模拟器默认端口是62001,但是有些版本可能不是这个端口,怎么查找到底是哪个端口呢?按照如下顺序进行就可以查找到你按装的夜神模拟 ...
-
hbuilder连接模拟器进行联调(逍遥模拟器,MuMu模拟器,夜神模拟器)
MuMu模拟器:7555 逍遥模拟器:21503 夜神模拟器:62001 1. 2. 3. 如果上诉方法不好使,可以重启模拟器以及hbuilder,有时可能连接中断,可以重新连接.
-
使用 Hbuilder 连接手机调试移动端项目
点击界面上的浏览器右侧的倒三角. 弹出列表以后,点击最后一行 “设置web服务器...”.继续弹出,点击右下角的“外置Web服务器设置”. 点新建. 弹出框后,填入“名称”和“浏览器运行U ...
-
夜神模拟器与HBuilder连接/cmd运行提示符/执行夜神模拟器命令/执行HBuilder命令
第一步:启动HBuilder和夜神模拟器 第二步:通过运行电脑命令CMD进入(电脑运行命令的快捷键是:windows键+R2.Ctrl键与Alt键之间的那个键就是windows键或者点击左下角开始图标 ...
-
androidkiller连接模拟器并修改源码调试
首先需要连接模拟器,首先在模拟器的bin目录下运行命令:nox_adb.exe connect 127.0.0.1:62001(可以disconnect关闭): 之后在androidkiller的bi ...
-
win 10 Hbuilder1.2.1连接Genymotion 调试Android 软件
这里记录一下 Hbuilder1.2.1连接Genymotion 调试Android 软件 的过程: 步骤一:把Genymotion 的 adb.exe 路径配置到 Hbuilder 中 在 菜单栏 ...
-
使用MuMu模拟器调试AndroidStudio项目
1.安装一款安卓模拟器 本例使用网易MuMu模拟器,因为目前网络上这类模拟器只有mumu的安卓版本是最新的,为6.0,安卓自带的Virtual Device虽然有很新的版本,但如果pc配置不是很高 ...
-
Windows 下 Hbuilder 真机调试(Android,iphone)
概述:主要讲讲自己在使用 HBuilder 真机调试功能时遇到的问题,以及如何解决.Android 相对没有遇到什么大问题,在电脑安装如360手机助手就可以正常使用了,主要问题是在 iphone 上( ...
-
Flutter Android 真机器调试 、模拟器调试、Vscode 中开发 Flutter 应用
必备条件: 1.准备一台 Android 手机 2.手机需要开启调试模式 3.用数据线把手机连上电脑 4.手机要允许电脑进行 Usb 调试 5.手机对应的 sdk 版本必须安装 注意: 1.关闭电脑上 ...
随机推荐
-
python列表分组的技巧
今天项目上需要到的. 如,将并行部署的机器分批次. 一次十台机器,如果分3次并行部署,则第一次123,第二次456,第三次789,第四次10. #coding=utf-8 a=[1,2,3,4,5,6 ...
-
ssh问题
一.基于秘钥认证: ssh-keygen ssh-copy-id -i .ssh/id_rsa.pub 10.10.10.70#在对方authorized_keys 文件中写入自己的id_rsa.pu ...
-
Android 设置旋转朝向
在AndroidMenifest.xml中activity标签中,添加一个属性 android:screenOrientation="landscape"
-
cf B. Valera and Contest
http://codeforces.com/contest/369/problem/B 先对k个处理,先处理sk%k个为sk/k+1,如果sk/k==0,k个数都为sk/k:对与剩下的数也按照同样的方 ...
-
javascript实现代码高亮
javascript实现代码高亮-wangHighLighter.js 1. 引言 (先贴出wangHighLighter.js的github地址:https://github.com/wangfup ...
-
VerilogHDL可综合设计的注意事项
可综合的语法已经记录得差不多了,剩下一些遗留的问题,在这里记录一下吧. 一.逻辑设计 (1)组合逻辑设计 下面是一些用Verilog进行组合逻辑设计时的一些注意事项: ①组合逻辑可以得到两种常用的RT ...
-
LaTeX的表格插入与排版
关于LaTex中的图表问题的几篇有用的文章 Graphics and Colour with LaTeX 有关在LaTex中插图和使用颜色的在线指导. Figure'ing and Picture' ...
-
转载 IEnumerable和IEnumerator 详解
初学C#的时候,老是被IEnumerable.IEnumerator.ICollection等这样的接口弄的糊里糊涂,我觉得有必要切底的弄清楚IEnumerable和IEnumerator的本质. 下 ...
-
CentOS 7 安装SVN并整合HTTP访问
#!/bin/bash## -------------------------------------------------## 安装svn并整合http访问## ----------------- ...
-
[Windows Azure] Development Considerations in Windows Azure SQL Database
Development Considerations in Windows Azure SQL Database 3 out of 5 rated this helpful - Rate this t ...