android 命令大全

[size=medium][color=brown]android命令大全
百度文库很全面的文档:http://wenku.baidu.com/view/202240270722192e4536f633.html


这篇文章更具体 带实例

文章转自:http://blog.csdn.net/liranke/archive/2009/12/15/5014534.aspx

android命令实战手册 收藏

1 android.bat


1.1 查看帮助信息:
android.bat –h 或 android.bat –help



1.2 创建avd
(1) android.bat create avd -t 1 -c 256M -p

E:\android_sdk\android-sdk-windows-1.6_r1\platforms\android-1.6\images -n avd16 -f -s HVGA

(2) android.bat create avd -t 2 -c 256M -p

E:\android_sdk\android-sdk-windows-1.6_r1\platforms\android-1.6\images -n avd2 -f -s HVGA

以上,用不同的设置创建avd.

(3) 直接用”android.bat”命令可以启动Android SDK图开界面(如下图),用它也可以创建avd;



(4) 在eclipse中,点击工具栏中的“open the avd and SDK manager”图标来打开上图。



1.3 Lists existing targets or virtual devices


E:\android_sdk\android-sdk-windows-1.6_r1\tools>android.bat list
Available Android targets:
id: 1
Name: Android 1.5
Type: Platform
API level: 3
Revision: 1
Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id: 2
Name: Android 1.6
Type: Platform
API level: 4
Revision: 1
Skins: HVGA (default), QVGA, WVGA800, WVGA854
id: 3
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 3
Description: Android + Google APIs
Based on Android 1.5 (API level 3)
Libraries:
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: QVGA-P, HVGA-L, HVGA (default), QVGA-L, HVGA-P
id: 4
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 1
Description: Android + Google APIs
Based on Android 1.6 (API level 4)
Libraries:
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: WVGA854, HVGA (default), WVGA800, QVGA
Available Android Virtual Devices:
Name: avd16
Path: C:\Documents and Settings\lizhongyi\.android\avd\avd16.avd
Target: Android 1.6 (API level 4)
Skin: HVGA
---------
Name: avd2
Path: C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd
Target: Android 1.6 (API level 4)
Skin: QVGA



1.4 Lists existing Android Virtual Devices


E:\android_sdk\android-sdk-windows-1.6_r1\tools>android list avd
Available Android Virtual Devices:
Name: avd16
Path: C:\Documents and Settings\lizhongyi\.android\avd\avd16.avd
Target: Android 1.6 (API level 4)
Skin: HVGA
---------
Name: avd2
Path: C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd
Target: Android 1.6 (API level 4)
Skin: QVGA



1.5 Lists existing targets
E:\android_sdk\android-sdk-windows-1.6_r1\tools>android list target

Available Android targets:
id: 1
Name: Android 1.5
Type: Platform
API level: 3
Revision: 1
Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id: 2
Name: Android 1.6
Type: Platform
API level: 4
Revision: 1
Skins: HVGA (default), QVGA, WVGA800, WVGA854
id: 3
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 3
Description: Android + Google APIs
Based on Android 1.5 (API level 3)
Libraries:
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: QVGA-P, HVGA-L, HVGA (default), QVGA-L, HVGA-P
id: 4
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 1
Description: Android + Google APIs
Based on Android 1.6 (API level 4)
Libraries:
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: WVGA854, HVGA (default), WVGA800, QVGA





12 emulator.exe
2.1 启动模拟器
(1) 最简单的方法(用avd):

emulator -avd avd2

(2) 按尺寸启动模拟器

emulator.exe -avd avd2 -scale 0.7



(3) 启动userdata.img

emulator -data userdata.img



(4) 启动system.img

emulator -data system.img



(5) 使用-verbose选项



E:\android_sdk\android-sdk-windows-1.6_r1\tools>emulator -verbose -avd avd2
emulator: found SDK root at E:\android_sdk\android-sdk-windows-1.6_r1
emulator: root virtual device file at C:\Documents and Settings\lizhongyi\.android/avd/avd2.ini
emulator: virtual device content at C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd
emulator: virtual device config file: C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/config.ini
emulator: locking user data image at C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/userdata-qemu.img
emulator: locking cache image at C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/cache.img
emulator: ignoring non-existing SD Card at C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/sdcard.img: No such file or directory
emulator: found skin 'QVGA' in directory: E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\skins
emulator: autoconfig: -skin QVGA
emulator: autoconfig: -skindir E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\skins
emulator: keyset loaded from: C:\Documents and Settings\lizhongyi\.android\default.keyset
emulator: trying to load skin file 'E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\skins/QVGA/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: registered 'boot-properties' qemud service
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'qemu.sf.lcd_density' = '120'
emulator: argv[00] = "emulator"
emulator: argv[01] = "-kernel"
emulator: argv[02] = "E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\images\/kernel-qemu"
emulator: argv[03] = "-initrd"
emulator: argv[04] = "E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\images\/ramdisk.img"
emulator: argv[05] = "-nand"
emulator: argv[06] = "system,size=0x4200000,initfile=E:\android_sdk\android-sdk-windows-1.6_r1/platforms\android-1.6\images\/system.img"
emulator: argv[07] = "-nand"
emulator: argv[08] = "userdata,size=0x4200000,file=C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/userdata-qemu.img"
emulator: argv[09] = "-nand"
emulator: argv[10] = "cache,size=0x4200000,file=C:\Documents and Settings\lizhongyi\.android\avd\avd2.avd/cache.img"
emulator: argv[11] = "-serial"
emulator: argv[12] = "android-kmsg"
emulator: argv[13] = "-serial"
emulator: argv[14] = "android-qemud"
emulator: argv[15] = "-append"
emulator: argv[16] = "qemu=1 console=ttyS0 android.checkjni=1 android.qemud=ttyS1 android.ndns=1"
emulator: argv[17] = "-m"
emulator: argv[18] = "96"
emulator: mapping 'system' NAND image to C:\DOCUME~1\LIZHON~1\LOCALS~1\Temp\\AndroidEmulator\TMP834.tmp
emulator: using 'winaudio' audio input backend
emulator: using 'winaudio' audio output backend
emulator: control console listening on port 5556, ADB on port 5557
emulator: sent '0012host:emulator:5557' to ADB server
emulator: ping program: E:\android_sdk\android-sdk-windows-1.6_r1\tools\ddms.bat
emulator: ping command: C:\WINDOWS\system32\cmd.exe /C "E:\android_sdk\android-sdk-windows-1.6_r1\tools\ddms.bat" ping emulator 1.11


(6) 使用- logcat 选项

emulator -logcat main -avd avd2



(7) 使用-trace选项

E:\android_sdk\android-sdk-windows-1.6_r1\tools>emulator -trace main(或events,或radio) -avd avd2

-- When done tracing, exit the emulator. --
emulator: emulator window was out of view and was recentred

或者:

E:\android_sdk\android-sdk-windows-1.6_r1\tools>emulator -trace radio -trace main -trace radio -avd avd2



(7) 使用- kernel和-ramdisk选项

E:\android_sdk\android-sdk-windows-1.6_r1\tools>emulator -kernel ..\platforms\android-1.6\images\kernel-qemu -ramdisk ..\platforms\android-1

.6\images\ramdisk.img -debug-kernel -verbose -avd avd2



(7) 使用- netfast选项

E:\android_sdk\android-sdk-windows-1.6_r1\tools>emulator -netfast -avd avd2





2.2 使用模拟器控制台
每一个运行中的模拟器实例都包括一个控制台,你可以利用控制台动态的查询和控制模拟设备的环境 。例如,你可以利用控制台动态的管理端口映射和网络特性,还可以模拟电话时间。要想进入控制台输入 命令,你需要使用telnet连接到控制台的端口号。



可以使用下面的命令随时随地连接到任何一个运行中的模拟器实例:



telnet localhost 端口号



假设第一个模拟器实例的控制台使用5554端口,下一个实例使用的端口号会加2,比如5556、5558…… 等。你可以在启动模拟器是使用-verbose选项来检测该模拟器实例使用的端口号,在调试 输出的找到以”emulator console running on port number”这一行。 另外, 你可 以在命令行中使用adb devices来查看模拟器实例和他们的端口列表。最多可以有16个模拟 器实例同时运行控制台。



(1) 进入控制台

先在一个cmd窗口中启动一个模拟器, 再打开一个cmd窗口,运行telnet命令,如下:

E:\android_sdk\android-sdk-windows-1.6_r1\tools> telnet localhost 5556

( 因为在我的PC上,启动了两个模拟器, 一个用的是5554端口,另一个用的是5556端口.这里,控制的是使用5556端口的模拟器)

进入后,如下图:





(2) gsm测试



输入

gsm voice on

ok

则可以在模拟器上看到3G图标,并且网络图标处于有信号状态。



而执行

gsm voice off

ok

后,3G图标消失,并且网络图标处于关闭(X)状态。



gsm call 13522543026

ok

后,模拟器有如下反应:







(3) sms测试

sms send 13522543026 hello

ok

则, 在模拟器的messaging中,就会看到有一条短信了.

如图:









13 ddms.bat

3.1 直接启动ddms
E:\android_sdk\android-sdk-windows-1.6_r1\tools>ddms
02:30 I/ddms: Created: [Debugger 8600-->568 inactive]
02:30 I/ddms: Created: [Debugger 8601-->617 inactive]
02:30 I/ddms: Created: [Debugger 8602-->619 inactive]
02:30 I/ddms: Created: [Debugger 8603-->657 inactive]
02:30 I/ddms: Created: [Debugger 8604-->670 inactive]
02:30 I/ddms: Created: [Debugger 8605-->681 inactive]





这和eclipse中的ddms是一样的.







4 adb


1.14.1 Adb help:


直接运行adb会显示出adb的help信息.如下:



E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb -help
Android Debug Bridge version 1.0.22


-d - directs command to the only connected USB device

returns an error if more than one USB device is present.

-e - directs command to the only running emulator.

returns an error if more than one emulator is running.

-s <serial number> - directs command to the USB device or emulator with

the given serial number

-p <product name or path> - simple product name like 'sooner', or

a relative/absolute path to a product

out directory like 'out/target/product/sooner'.

If -p is not specified, the ANDROID_PRODUCT_OUT

environment variable is used, which must

be an absolute path.

devices - list all connected devices



device commands:

adb push <local> <remote> - copy file/dir to device

adb pull <remote> <local> - copy file/dir from device

adb sync [ <directory> ] - copy host->device only if changed

(see 'adb help all')

adb shell - run remote shell interactively

adb shell <command> - run remote shell command

adb emu <command> - run emulator console command

adb logcat [ <filter-spec> ] - View device log

adb forward <local> <remote> - forward socket connections

forward specs are one of:

tcp:<port>

localabstract:<unix domain socket name>

localreserved:<unix domain socket name>

localfilesystem:<unix domain socket name>

dev:<character device name>

jdwp:<process pid> (remote only)

adb jdwp - list PIDs of processes hosting a JDWP transport

adb install [-l] [-r] <file> - push this package file to the device and install it

('-l' means forward-lock the app)

('-r' means reinstall the app, keeping its data)

adb uninstall [-k] <package> - remove this app package from the device

('-k' means keep the data and cache directories)

adb bugreport - return all information from the device

that should be included in a bug report.



adb help - show this help message

adb version - show version num



DATAOPTS:

(no option) - don't touch the data partition

-w - wipe the data partition

-d - flash the data partition



scripting:

adb wait-for-device - block until device is online

adb start-server - ensure that there is a server running

adb kill-server - kill the server if it is running

adb get-state - prints: offline | bootloader | device

adb get-serialno - prints: <serial-number>

adb status-window - continuously print device status for a specified device

adb remount - remounts the /system partition on the device read-write

adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program

adb root - restarts adb with root permissions



networking:

adb ppp <tty> [parameters] - Run PPP over USB.

Note: you should not automatically start a PPP connection.

<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1

[parameters] - Eg. defaultroute debug dump local notty usepeerdns



adb sync notes: adb sync [ <directory> ]

<localdir> can be interpreted in several ways:



- If <directory> is not specified, both /system and /data partitions will be updated.



- If it is "system" or "data", only the corresponding partition

is updated.







14.2 scripting:
(1) start adb server

方法1: E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb kill-server



E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb start-server

* daemon not running. starting it now *

* daemon started successfully *

E:\android_sdk\android-sdk-windows-1.6_r1\tools>



方法2: E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb kill-server



E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb fork-server server

OK



注意: 方法1是直接用adb的scripting “adb start-server” 来启动的, 启动成功后,直接返回到cmd命令窗口;

方法2 是用直接启动adb server进程的方式” adb fork-server server”来启动的,启动成功后, 显示”OK”, 并且不返回到cmd命令窗口.

分析: 这是因为adb.exe是一个命令(可执行程序), 它启动后,会调用到” adb fork-server server”(这个server正是adb server), 然后, adb.exe就退出了,这时,只剩下adb server 这个进程了,这个进程的名字也是adb.exe.而方法2是直接启动adb server,所以,不能退出,如果退出,就相当于adb server退出了.

adb server启动后,会在任务管理器中进程中可以看到adb.exe.

如果用户将adb.exe 强行结束了,那么, 对于方法2,就会回到cmd窗口.

另外,如果eclipse中启动了模拟器,那么, 强行结束adb server后, 会再启动一个.



(2) adb get-state and get-serialno

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb get-state

device



E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb get-serialno

emulator-5554



如果同时启动了两个模拟器,则这两个脚本的执行结果均是:

unknown



(3) adb root

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb root

adbd is already running as root



adb reboot recovery

(4) adb reboot [android-sdk-windows-1.6_r1支持]

adb reboot bootloader(或 recovery)

说明:reboots the device, optionally into the bootloader or recovery program,可见,只针对真机,

所以,当运行此脚本时,模拟器就不能运行了。

另外,此脚本是从android-sdk-windows-1.6_r1开始支持的。



1.12.3 device commands:
(1) list all connected devices

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb devices

List of devices attached

emulator-5554 device

emulator-5556 device



(2) adb shell

开机:

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb shell

# ls

ls

sqlite_stmt_journals

cache

sdcard

etc

system

sys

sbin

proc

init.rc

init.goldfish.rc

init

default.prop

data

root

dev

# cd data

cd data

# ls

ls

misc

local

data

app-private

app

property

anr

dalvik-cache

system

lost+found



# cd data

cd data

# pwd

pwd

/data/data

# ls -l

Ls -l

# ls -l

ls -l

drwxr-xr-x app_0 app_0 2009-11-25 02:42 com.android.packageinstaller

drwxr-xr-x app_1 app_1 2009-11-25 02:42 com.android.providers.contacts

drwxr-xr-x app_2 app_2 2009-11-25 02:42 com.android.fallback

drwxr-xr-x app_1 app_1 2009-11-25 02:42 com.android.inputmethod.latin

drwxr-xr-x app_3 app_3 2009-11-25 02:42 com.android.gesture.builder

drwxr-xr-x app_4 app_4 2009-11-25 02:42 com.google.android.marvin.talkback

drwxr-xr-x app_5 app_5 2009-11-25 02:42 com.android.providers.downloads

drwxr-xr-x app_1 app_1 2009-11-25 02:42 com.android.inputmethod.pinyin

drwxr-xr-x system system 2009-11-25 02:42 com.android.providers.settings

drwxr-xr-x app_6 app_6 2009-11-25 02:42 com.android.development

drwxr-xr-x app_7 app_7 2009-11-25 02:42 com.android.email

drwxr-xr-x app_8 app_8 2009-11-25 02:42 com.android.music

drwxr-xr-x app_1 app_1 2009-11-25 02:42 com.android.globalsearch

drwxr-xr-x app_9 app_9 2009-11-25 02:42 jp.co.omronsoft.openwnn

drwxr-xr-x app_10 app_10 2009-11-25 02:42 com.android.mms

drwxr-xr-x app_5 app_5 2009-11-25 02:42 com.android.camera

drwxr-xr-x app_11 app_11 2009-11-25 02:42 com.android.term

drwxr-xr-x system system 2009-11-25 02:42 com.android.settings

drwxr-xr-x app_12 app_12 2009-11-25 02:42 com.android.browser

drwxr-xr-x app_13 app_13 2009-11-25 02:42 android.tts

drwxr-xr-x app_14 app_14 2009-11-25 02:42 com.android.customlocale

drwxr-xr-x app_1 app_1 2009-11-25 02:42 com.android.providers.userdictionary

drwxr-xr-x app_15 app_15 2009-11-25 02:42 com.android.soundrecorder

drwxr-xr-x app_16 app_16 2009-11-25 02:42 com.android.netspeed

drwxr-xr-x radio radio 2009-11-25 02:43 com.android.phone

drwxr-xr-x app_1 app_1 2009-11-25 02:43 com.android.contacts

drwxr-xr-x app_17 app_17 2009-11-25 02:43 com.android.htmlviewer

drwxr-xr-x system system 2009-11-25 02:43 com.android.server.vpn

drwxr-xr-x app_1 app_1 2009-11-25 02:43 com.google.android.providers.enhancedgooglesearch

drwxr-xr-x app_18 app_18 2009-11-25 02:43 com.android.sdksetup

drwxr-xr-x app_4 app_4 2009-11-25 02:43 com.google.android.marvin.soundback

drwxr-xr-x app_5 app_5 2009-11-25 02:43 com.android.providers.drm

drwxr-xr-x app_1 app_1 2009-11-25 02:43 com.android.launcher

drwxr-xr-x app_1 app_1 2009-11-25 02:43 com.android.providers.applications

drwxr-xr-x app_19 app_19 2009-11-25 02:43 com.svox.pico

drwxr-xr-x app_5 app_5 2009-11-25 02:43 com.android.providers.media

drwxr-xr-x app_20 app_20 2009-11-25 02:43 com.android.calculator2

drwxr-xr-x app_4 app_4 2009-11-25 02:43 com.google.android.marvin.kickback

drwxr-xr-x radio radio 2009-11-25 02:43 com.android.providers.telephony

drwxr-xr-x app_21 app_21 2009-11-25 02:43 com.android.alarmclock

drwxr-xr-x app_22 app_22 2009-11-25 02:43 com.android.spare_parts

先后启动kx011和a两个应用程序(都是activity),则,

在/data/data下,就会看到如下两个应用了,

# ls

a.a

com.kx011

而且,在/data/app下,也有这两个应用的apk文件。

# cd /data/app

cd /data/app

# ls

ls

com.kx011.apk

a.a.apk



说明:在/data/data目录下,存放了所有系统已经启动的的应用程序;

在/data/app下,以apk的形式存放了用户建立的应用。



(3)adb pull // 说明:copy file/dir from device

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb pull /init.rc F:\ABD\x.txt

668 KB/s (10700 bytes in 0.015s)



adb push <local> <remote> - copy file/dir to device

adb pull <remote> <local> - copy file/dir from device



(4)adb push // 说明:copy file/dir to device

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb push ddms.bat /data/

124 KB/s (1992 bytes in 0.015s)





(5) adb install

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb install D:\allProject\android16\kx011\bin\kx011.apk

259 KB/s (8297 bytes in 0.031s)

pkg: /data/local/tmp/kx011.apk

Success

#

说明: install 完成之后,直接进入adb shell





(6) adb jdwp

E:\android_sdk\android-sdk-windows-1.6_r1\tools>adb jdwp

567

614

616

641

661

678

707

714



(7) adb bugreport

列出了bug信息,see to bugreport.txt [ 点击查看 ]





13 关于编译


1.13.1 am:


adb install c:\NetScramble_1.1.apk

adb shell rm data/app/NetScramble_1.1.apk

am start -n net.xiashou.android/net.xiashou.android.HelloAndroid

# am start -a android.intent.action.VIEW -d http://www.xiashou.net

# am start -a android.intent.action.CALL -d tel:10086

# am start -a android.intent.action.VIEW geo:0,0?q=tianjin

# am start –n com.android.music/.MediaPlaybackActivity



1.13.2 重新编译源码
当然,这是在linux下面进行的。

(1) 编译源码

解压原码到本地,进入原码目录,执行: make, 即可。



(2) 编译SDK

在make完成后,直接make sdk,会在out/host/linux-x86/sdk下面生成mdk文件及文件夹,形如:android-sdk_eng.xxx_linux-x86



(3) 编译单个模块

1.先将system文件夹移出,

2.在android目录下执行

$ . build/envsetup.sh

3. 然后你就会多出几个可用的命令。在改了Contacts联系人项目后,可以简单的执行一下命令来单独编译这个部分:

$mmm packages/apps/Contacts/

或者在src目录下直接运行make module name :

cd ~/android/src

make Contacts

4.将新生成的system文件夹覆盖原system文件夹

5.然后编译system.img

./out/host/linux-x86/bin/mkyaffs2image -f out/target/product/generic/system out/target/product/generic/system.img

第二次mmm需将/out/target/product/generic/obj/全部拷回!!!

(mmm命令非常的多管闲事,它每次编译都把obj删了!!!)

输出cmd命令到文件

dir > a.log



4 系统信息
由于篇幅的原因,这里,只给出链接,分别列出了process, memory info, init log, bugreport信息。值得注意的是,bugreport 中包含了前三项。另外,process和memory info是从真机中导出来的,init log 和bugreport是从模拟器拿到的,而且,取得的日期时间都不一致。



process, memory info, init log, bugreport

[/color][/size][/size]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值