~/talk

Build-and-Learn: The adb Protocol

TalkinJapaneseat DroidKaigi 2023 · 2023-09-14..09-16· [networking, android]
name:ntsk
links:none on file
slides:none on file

Reimplements an Android Debug Bridge (ADB) client in Kotlin that connects over plain TCP to a device IP:port and exercises the full protocol, including the 24-byte header, little-endian integer encoding, and payload checksum. Finds the real ADB uses a simple byte-sum checksum rather than the spec CRC, notes that shell v2 (Android 7+) provides separate stdout/stderr streams, uses ADB_TRACE logging for comparison, and successfully negotiates CONNECT/OK, selects a transport, and runs a remote ls.

AI-written summary · about

  1. 0:00Introduction
  2. 1:23ADB basics and components
  3. 3:09ADB server and client roles
  4. 5:23ADB services and communication
  5. 8:17ADB protocol message format
  6. 11:05ADB protocol commands
  7. 13:58ADB connection setup and auth
  8. 15:04ADB server code
  9. 18:21ADB shell commands
  10. 20:35ADB tracing for debugging
  11. 21:41ADB server and ADBd
  12. 24:31ADB connect message
  13. 26:36ADB response parsing
  14. 27:41ADB communication summary
  15. 28:01References and summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.