ADB

Search This thread

jashsu

Senior Member
Nov 15, 2008
1,860
20
Open your cmd window and just run adb without any arguments. It will give you a list of possible arguments and their usages. The most important two would be adb install and adb shell. With adb install, you can install a package, and with adb shell you get an interactive shell access to Dream's filesystem. Here is a part of the help listing from sdk 1.5-pre's adb:

Code:
  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
 

m00b3rt

Senior Member
Mar 15, 2009
121
0
when i try to run a command it says.

"'adb' is not recognized as an internal or external command, operable program or batch file"
 

jashsu

Senior Member
Nov 15, 2008
1,860
20
Whatever folder you put adb in is not in your system's PATH. In order to run a program not in your current working directory without specifying its absolute location, that location has to be one of the ones specified in the PATH. Let's say for example you put adb.exe and adbwinapi.dll in c:\ When you type cmd in XP, by default it will open a prompt at c:\Documents and Settings\%username%\. If you now type adb, the os will look for a file called adb.exe or adb.bat or adb.com in the Documents and Settings folder. Since you placed the file in a different folder, it will give you an error. You have two options:

A. Type c:\adb.exe every time you want to run adb
B. Add c:\ (or whatever directory adb is in) to the PATH. Here is a quick tut on how to do that.
C. Move adb.exe and adbwinapi.dll to c:\Documents and Settings\%username%\

To a programmer or experienced computer user, A would be a stupid method, B would be the proper method, and C would be a hacky or dirty method.
 
Last edited:

m00b3rt

Senior Member
Mar 15, 2009
121
0
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Admin>"C:\Documents and Settings\Admin\Desktop\G1 Deve
lopment\android-sdk-windows-1.0_r2\tools\adb.exe"
Android Debug Bridge version 1.0.20

-d - directs command to the only connected USB devic
e
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 r
unning.
-s <serial number> - directs command to the USB device or emulator w
ith
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 instal
l 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-product - prints: <product-id>
adb get-serialno - prints: <serial-number>
adb status-window - continuously print device status for a specifie
d device
adb remount - remounts the /system partition on the device re
ad-write

networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PDP 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 u
pdated.

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

C:\Documents and Settings\Admin>adb shell
'adb' is not recognized as an internal or external command,
operable program or batch file.

C:\Documents and Settings\Admin>

this is what i get.
 

jashsu

Senior Member
Nov 15, 2008
1,860
20
The first time you executed it with the full path, which is correct. However, the second time you didn't. If you are going to execute it with the full path then you have to do it every single time. Alternately, type cd c:\Documents and Settings\Admin\Desktop\android-sdk-windows-1.0_r2\tools\ then you can do whatever you want without specifying the full path (because the executable is now in your working directory)