赵工的个人空间


专业技术部分转网页计算转业余爱好部分


 手持终端

首页 > 专业技术 > 手持终端 > Android开发常用工具及命令
Android开发常用工具及命令

开发Android有多种常用的工具,可以配合Eclipse及Android Studio开发平台使用。

1.ADB工具:

ADB(Android Debug Bridge)是Android提供的通用的系统调试工具,是使用最多的命令工具。命令格式为:
adb [-d|-e|-s<serialNumber>][command]
其中,command为要传送的命令,参数-d表示命令传送到连接USB的实际硬件,参数-e表示命令传送到Android模拟器,参数-s<serialNumber>表示当有多个Android模拟器时加上AVD的序列号来区分。
如果要将helloworld.apk文件安装到序列号为5554的Android模拟器AVD上,命令为:
adb -s emulater-5554 install hellowworld.apk
常用的ADB命令见下表:


命令

说明

adb devices

查看当前运行的模拟器或设备实例的列表,以及每个实例的当前状态

adb get-state

查看adb服务器的状态,device为运行,offline为离线,bootloader为开机

adb get-serialno

查看模拟器或者设备的序列号

adb get-product

查看模拟器或设备的id

adb push <local> <remote>

将文件从本地磁盘复制到模拟器

adb pull <remote> <local>

将文件从模拟器或设备复制到本地磁盘上

adb install <path to apk>

安装apk文件到模拟器或设备上,命令后跟的是带路径的apk文件

adb uninstall <package>

从模拟器/设备上卸载apk文件,命令后接的是package名

adb shell [command]

进入模拟器/设备的命令行模式,可以执行各种Linux系统命令,如rm、mv、cd、ls等,组合键ctrl+d或exit命令可以退出此模式

adb logcat

查看bug调试记录,实时监控模式,组合键ctrl+c退出此模式

adb bugreport

查看bug调试报告,获得系统产生的所有错误信息

adb forward tcp:6100 tcp:8000

设置任意的端口号,作为主机的通信端口,内定tcp端口号6100

adb start-server

启动adb服务器

adb kill-server

关闭adb服务器

1)安装Android程序:
adb install apkname.apk命令将apk文件安装到Android模拟器中
adb install -s apkname.apk命令将apk文件安装到Android模拟器的SD卡上
adb install -r apkname.apk命令重新安装Android模拟器上已经存在的apk文件
后面的apkname.apk要包含路径名。安装完成后,显示success信息。打开模拟器,可以看到安装的Android程序。
2)卸载Android程序:
adb uninstall packetname
卸载Android程序时,后面使用的是该程序的包名。如果只卸载程序而保留数据和缓存目录,则使用时加上-k参数:
adb uninstall -k packetname
3)列出连接的Android设备:
adb devices
4)指定设备并且安装/卸载应用程序:
adb -s  [设备序号] [其他命令]
设备可以是模拟器emulator-5554这类,也可以是真机,使用adb devices获得的序列号
5)运行程序:
可以在模拟器或真机上运行已安装的应用程序,要指明设备序号及包名、主程序,如:
adb -s emulator-5554 shell am start -n net.blog.mobile/net.blog.mobile.Main
6)启动和终止adb服务:
adb kill-server
adb start-server
当adb服务器产生不正常反应时可以使用来停止并重新启动。
7)打印调试信息:
adb -s [设备序号] logcat
8)过滤调试信息:
调试信息太多,需要选择部分调试信息:
adb logcat [<标签>:<重要性>]
例如需要查看电源管理服务PowerManager Service相关信息,可以使用:
adb logcat PowerManagerService:I *:S
表示遇到PowerManagerService相关的信息,只要严重性是I以上要直接打印出来,而对其他信息保持Silent。
重要性StatusBarPolicy分为7种:


V

Verbose

最冗长繁复的信息

D

Debug

调试形式的错误信息

I

Info

尽可能的提供信息

W

Warning

提供警告信息

E

Error

提供错误信息

F

Fatal

提供严重错误信息

S

Silent

什么都不提供

9)设置调试信息格式:
logcat -v <输出格式选项> (后面可接过滤选项)
示例:
logcat -v time PowerManagerService:I *:S
PowerManagerService所触发的时间都被记录在每个文件头中。
logcat -v long PowerManagerService:I *:S
需要关于PowerManagerService更详尽的信息
而其中输出格式选项有:


brief

默认的<重要性>/<标签>和pid的格式

process

只显示出该程序的pid

tag

只显示<重要性>/<标签>

thread

显示出pid:thread的号码

raw

什么标头都不加

time

加上时间信息

long

所有相关的信息都会显示出来

10)将PC与模拟器或真机交换文件:
将真机的SD卡根目录下的jpg文件复制到PC当前目录并改名存储,使用:
adb -s 04b98588234 pull /sdcard/camera.jpg picture.jpg
把PC机上当前目录下的jpg文件复制到真机的SD卡目录下并改名存储,使用
adb -s 04b98588234 push picture.jpg /sdcard/camera.jpg
11)Shell命令:
在Android上可以执行Shell命令,并可以在PC上进入Shell控制台:
adb -s  04b98588234 shell
如果显示的提示符为$,表示当前登录shell的是普通用户;如果提示符为#,表示使用root用户登录shell。使用cd system/bin,然后使用ls就可以列出当前Android系统支持的命令。
12)创建SD卡:
模拟器上测试程序如果需要使用SD卡,在PC上可以使用mksdcard命令创建一个虚拟的SD卡文件:
mksdcard -l sdcard 10MB sd.img
其中,sdcard表示SD卡的卷标;10M表示SD卡的大小,要大于8MB;sd.img是SD卡的文件名。使用emutator命令启动模拟器时需要使用-sdcard参数指定SD卡文件的绝对路径。

2.DDMS工具:

DDMS(Dalvik Debug Monitor Service)是Android开发环境的Dalvik虚拟机调试监管服务,可以使用来为Android模拟器安装Android程序。DDMS可以通过Android SDK安装路径下的tools文件夹中的ddms.bat文件打开。
使用DDMS工具可以监控系统后台运行日志、模拟电话拨打与接听、模拟发送和接收短信、虚拟GPS位置数据、对模拟器或设备进行屏幕快照等。DDMS工具也可以用来管理线程Thread、调试特定程序、生成跟踪数据、查看堆栈Heap和进程数据等。
打开DDMS管理窗口,依次展开其中的data/app节点,并选中app节点,选择其中的apk文件,点击打开按钮,即可将Android程序安装到Android模拟器上。
Eclipse菜单的Windows-Open Perspective-Other弹出Open Perspective对话框,选择其中的DDMS即可启动DDMS调试监控服务系统。
DDMS界面包含了Device面板、Emulate Control面板、Logcat面板和调试主面板。Device面板显示了与DDMS相连接的模拟器或者设备上运行的应用程序的进程,在其中可以设置应用程序进程和堆栈的更新状态,也可以直接停止某个应用程序的进程,单击面板最左边的按钮可以抓取模拟器/设备屏幕图片并保存图片文件。Emulate Control面板可以模拟电话状态、电话行为、手动设置GPS位置、下载GPX文件和下载Google Earth的KML文件等。Logcat面板显示了应用程序实时执行状态和错误信息,用户可以通过此面板实时监测程序运行的信息,面板右上角的5个圆形按钮自动将信息分类,V表示显示全部信息,D表示仅显示调试信息,I表示仅显示普通信息,W表示仅显示警告信息,E表示仅显示错误信息,其中可以设置Tag标签来过滤其中的信息。
调试主面板包含Threads、Heap、Allocation Tracker和File Explorer等窗口,Threads用于显示应用程序当前状态下所有正在执行的线程状态;Heap用于显示应用程序当前状态下应用程序中的堆栈分配与回收状态;File Explorer为文件管理窗口,用于显示模拟器或设备中的文件,包括系统内的文件和SD卡上的文件,右上方还有按钮,可以执行从模拟器或设备到磁盘间文件的复制,或者删除模拟器上的文件。

3.AAPT工具:

AAPT(Android Asset Packaging Tool)是Android系统的资源打包工具,可以用来创建apk文件,其中包含了Android应用程序的二进制文件和所需要的资源文件,包括res、assets目录下的文件及AndroidManifest.xml配置文件。命令格式为:
aapt p -A assets -s res -M AndroidManifest.xml -F \bin\resources.apk
其中,assets为assets文件夹路径,res为res文件夹路径。

4.Mksdcard工具:

用来在本地磁盘上创建一个虚拟的SD卡镜像磁盘,采用FAT32格式,利用这个镜像磁盘可以在模拟器上模拟SD存储卡。命令格式为:
mksdcard [-l label] <size> [K|M] <file>
其中,label指定SD卡的卷标,size指定了SD卡的大小(单位MB或KB),file是SD卡镜像文件的路径。
创建AVD时加载已创建好的SD卡的命令格式为:
emulator -sdcard <file>
示例:
mksdcard -l "s1" 1024M d:\sd1
emulator -avd android_2.2_4 -sdcard d:\sd1

5.DX工具:

DX命令用来将Java语言的class类文件转换成dex(Dalvik Executable Format)文件。命令格式为:
dx --dex [--dump-to=<file>] [--core-library] <file>
其中,file代表类文件的路径,即转换成dex文件的保存路径。

6.Android Monkey工具:

这是一个命令行工具,用于测试软件的稳定性,可以在模拟器或设备中运行,Monkey工具包含很多有用的选项,并可以根据指定的级别来反馈信息,使用步骤为:
开启Eclipse,并显示Logcat面板;开启需要测试的模拟器AVD;进入shell命令行模式;准备两把屏幕尺子,以便找到测试时的点及动作变化;shell中输入Mobkey命令,查看结果并将结果保存;分析结果。
命令的格式为:
adb shell monkey [options]
如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。典型命令行示例为:
adb shell monkey -p your.package.name -v 500

7.Traceview工具:

用来跟踪Android应用程序产生的日志数据,并生成相应的图形分析视图。使用Traceview命令必须在程序代码中嵌入相应的debug语句,而且需要启动SD卡,并配置为android. Permission.WRITE_EXTERNAL_STORAGE权限。这样,执行后SD卡产生了.trace文件。复制出这个文件后就可以执行traceview命令来生成相应的图形分析视图。

8.在Android模拟器中卸载程序:

打开模拟器设置界面,在列表中选择应用列表项,进入应用界面,选择要卸载的Android程序,单击强制停止按钮,再单击卸载按钮,即可卸载指定的Android程序。

9.使用Android模拟器拨打电话:

需要同时启动两个Android模拟器,服务器会自动与所有运行的Android模拟器建立连接,并通过扫描5554到5584范围之间的偶数端口来定位Android模拟器的虚拟号码。Android模拟器的虚拟号码根据启动的先后顺序自动分配,比如第一个启动的Android模拟器的虚拟号码为5554,第二个启动的Android模拟器的虚拟号码为5556,以此类推。开发人员可以通过Android模拟器的虚拟号码模拟电话拨打功能。

 

Copyright@dwenzhao.cn All Rights Reserved   备案号:粤ICP备15026949号
联系邮箱:dwenzhao@163.com  QQ:1608288659