安卓开发常见问题

学习安卓开发的我们总会遇到各种各样恼人的事情:比如最恶心的Eclipse下Logcat不打印, 一段时间后又一股脑把之前的打印出来。

真是急煞我也。 这里分享出我知道的一些开发技巧, 希望对大家有所帮助, 同时也希望有妙招的朋友也分享一些出来, 彼此有益。

关于模拟器

1. Intel有个好东西: HAXM, 即硬件加速执行管理器。 是用来加速安卓模拟器的, 效果很明显。 尤其在Android Studio下, 不装HAXM,

内存不超过4G的话, 启动不了虚拟机。 使用要求: 安卓X86模拟器。 

2. 模拟器的内存和存储不要设置太高, 够用就好, 因为它们会占用系统资源。同样, 模拟器的屏幕不要太大, 最好不要超过10寸。

3. 最好不要运行多个模拟器, 模拟器对CPU/GPU的消耗实在太大了。

4. 最快的方式是直接运行在真机中。 

Eclipse + ADT

1. Logcat不打印, 一段时间后一股脑打印, 太坑了。 重启下ADB, 命令行输入:

adb kill-server
adb start-server

 

2. ADB server didn't ACK: 

我们经常遇到命令行输入adb devices, 产生ADB server didn't ACK这样的错误。首先这种情况大多都是adb专用端口5037被其他进程占用导致的。在命令行中一次输入以下命令:

adb nodaemon server // 如果打印cannot bind 'tcp:5037', 说明5037端口确实被占用了
netstat -ano | findstr "5037" // 查找占用5037的进程, 假定进程号为7836
tasklist /fi "pid eq 7836" // 根据进程找到对应的程序

我们找到进程号为7836的程序后, 在任务管理器中将其杀死,重启Eclipse即可。

3. 如何在命令行中进入android系统

adb devices // 查出正在运行的模拟器, 以emulator-5554为例
adb -s emulator-5554 shell // 进入android的linux shell中

4. 如何在命令行中打印log日志

有时候Eclipse老是不出log, 我们也不用卡在那里, 这里有一种应急的解决办法:

adb -s emulator-5554 shell // 首先解决adb连接问题, 见1和2, 并进入shell中
adb logcat | grep TAG // 其中TAG为过滤规则, 可字定义

 

posted on 2016-04-18 13:17  了明  阅读(350)  评论(0编辑  收藏  举报

导航