最近着手用MUI开发App,在做准备工作时遇到一些问题,现记录如下以便日后有个参考。
1、在Chrome地址栏,输入“chrome://inspect”,点击"inspect"时,如果遇到启动了一个白屏界面,说明被墙了。因为此服务需要连接google的服务器。 还有一个原因是安卓模拟器,我本来用的ADT,但是怎么弄都是空白的,后来换genymotion模拟器,才正常。可能跟我之前装了比较多的SDK有关系吧!反正没找到原因。
2、安装好hbuilder和genymotion,启动模拟器后,chrome://inspect下面,发现端口总是掉线,hbuilder完全不为所动,找不到启动的模拟器,更别提运行了。 这是因为adb.exe冲突。
问题分析:
我的电脑上已经有Android sdk环境,并且配置了环境变量,所以一运行adb就会启动android下面的adb,而genymotion和hbuilder都有各自使用的adb。
目录分别是:(示例)
. \adt-bundle-windows-x86_64-20140321\sdk\platform-tools
.\HBuilder\tools
.\Genymobile\Genymotion\tools
所以很容易搞糊涂,说不定你的pc上还有什么豌豆荚,手机助手一类的,都有各自的adb。
解决方法:
1、退出HBuilder,在任务管理器中kill掉所有的adb.exe进程,命令:taskkill adb.exe
2、启动genymotion模拟器,启动完成后,在CMD中,进入genymotion的tools目录,运行: .\adb.exe devices(同样不能省略.\),清单中会显示模拟器的ip和端口,
例如:List of devices attached
192.168.175.101:5555 device
3、kill掉genymotion的adb.exe进程。如果发现杀不掉adb.exe进程,可以将genymotion的adb.exe先改名,再kill掉adb。
4、启动hbuilder,在CMD中,进入hbuilder的tools目录,运行: .\adb.exe connect XXX.XX.XX.XXX:5555 (XX部分为第一步查出的模拟器 IP地址)。
于是hbuilder就连接上了模拟器。
5、但是退出模拟器下次再启动genymotion时会启动不了,这时就是genymotion Settings里面的ADB tool参数重新配置一下,点击Settings,选择ADB,如下图,
ADB tool connection settings选择Use custom Android SDK tools,
Android SDK的路径配置为HBuilder的adb路径,
这时下面可能会提示aapt找不到,那就把genymotion tool下面的aapt copy 到HBuilder 的adbs路径下,与HBuilder的adb在同一个目录下
注意:
1. 不能省去前面的.\ ,指定当前路径,因为path环境变量中有androidsdk的路径,会运行到那个adb,那个adb启动的时候会先kill掉当前的adb,需要明确指定是运行的hbuilder的adb;
2. 后面那堆ip和端口怎么得到的,在kill所有adb.exe进程启动genymotion模拟器后,进入genymotion的tools目录,运行: .\adb devices(同样不能省略.\),清单中会显示模拟器的ip和端口。;
3. 如何知道当前运行的adb.exe是哪个软件的:在任务管理器中右键该adb.exe,选择右键菜单中的:打开文件位置
4. 另外,如果发现杀不掉adb.exe进程,可以将genymotion的adb.exe改名,再kill掉adb。
如果在任务管理器里adb.exe进程清理不了,就将adb,exe改名。如果一开始就改名,可能导致模拟器无法启动。