blob: dfe9b2b28e2cf834eae10d5b3ca5548f0de62852 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# Services
LibADB only supports local services which can be requested through `AbsAdbConnectionManager#openStream(String)` or
`AdbConnection#open(String)`.
- `shell:command arg1 arg2 ...`
Run `command arg1 arg2 ...` in a shell on the device, and return its output and error streams. Note that arguments
must be separated by spaces. If an argument contains a space, it must be quoted with double-quotes. Arguments cannot
contain double quotes or things will go very wrong.
- `shell:`
Start an interactive shell session on the device. Redirect stdin/stdout/stderr as appropriate.
- `dev:<path>`
Opens a device file and connects the client directly to it for read/write purposes. Useful for debugging, but may
require special privileges and thus may not run on all devices. `<path>` is a full path from the root of the
filesystem.
- `tcp:<port>`
Tries to connect to tcp port `<port>` on localhost.
- `tcp:<port>:<server-name>`
Tries to connect to tcp port `<port>` on machine `<server-name>` from the device. This can be useful to debug some
networking/proxy issues that can only be revealed on the device itself.
- `local:<path>`
Tries to connect to a Unix domain socket `<path>` on the device.
- `localreserved:<path>`/
`localabstract:<path>`/
`localfilesystem:<path>`
Variants of `local:<path>` that are used to access other Android socket namespaces.
- `sync:`
This starts the file synchronization service, used to implement "adb push" and "adb pull". Since this service is
pretty complex, it will be detailed in a companion document named SYNC.TXT
- `reverse:<forward-command>`
This implements the 'adb reverse' feature, i.e. the ability to reverse socket connections from a device to the host.
`<forward-command>` is one of the forwarding commands that are described above, as in:
list-forward
forward:<local>;<remote>
forward:norebind:<local>;<remote>
killforward-all
killforward:<local>
Note that in this case, <local> corresponds to the socket on the device
and <remote> corresponds to the socket on the host.
The output of reverse:list-forward is the same as host:list-forward
except that <serial> will be just 'host'.
## Reference
- [SERVICES.TXT](https://android.googlesource.com/platform/packages/modules/adb/+/6a85258511fb13ebbbedba4e36616db4c6e970fb/SERVICES.TXT)
|