# Android SDK Platform Tools changelog > Command-line tools for Android development — adb, fastboot and systrace, shipped with the SDK. - Vendor: Google - Category: Developer Tools - Official site: https://developer.android.com/tools/releases/platform-tools - Tracked by: What's New (https://whatsnew.fyi/product/android-platform-tools) - Harvested from: AI extracted - Entries below: 25 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### 37.0.1 - Date: 2026-07-01 - Version: 37.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/37.0.1 - **removed** — Delete openscreen backend; the environment variable ADB_MDNS_OPENSCREEN no longer has any effect - **added** — Add trace level to ADB_TRACE format to accept a log level (for example: usb:v, services:w) - **changed** — Improve USB hotplug system on Linux by relying on udev netlink events instead of kernel to avoid race conditions with udev - **added** — Add blame for the kill-server command to print out the process command line chain which requested termination of the adb server - **changed** — Improve mDNS backend on Windows by loading wlanapi.dll lazily to allow adb to run on Windows Server that doesn't include wlanapi.dll - **changed** — Introduce libadbusb to replace libusb on Windows; libadbusb can be disabled by setting the ADB_USB_LEGACY environment variable to 1 - **changed** — Disable libusb on MacOS and use legacy USB backend instead; libusb can be enabled by setting the ADB_LIBUSB environment variable to 1 adb Delete openscreen backend. The environment variable ADB_MDNS_OPENSCREEN no longer has any effect. The only mDNS backend is libadbmdns. Add trace level. ADB_TRACE format now accepts a log level (for example: usb:v, services:w). Linux: Improve USB hotplug system. Rely on udev netlink events instead of kernel to avoid race conditions with udev. Add blame for the kill-server command. The adb server will print out the process command line chain which requested its termination. Windows: Improve mDNS backend. Load wlanapi.dll lazily to allow adb to run on Windows Server that doesn't include wlanapi.dll. Introduce libadbusb to replace libusb. libadbusb can be disabled by setting the ADB_USB_LEGACY environment variable to 1. MacOS: Disable libusb. Use legacy USB backend instead. libusb can be enabled by setting the ADB_LIBUSB environment variable to 1. ### 37.0.0 - Date: 2026-02-01 - Version: 37.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/37.0.0 - **changed** — Default mDNS backend is now libadbmdns, with openscreen included as deprecated failover - **added** — Libadbmdns now returns .local hostname as part of services metadata - **changed** — Linux USB backend now uses netlink instead of an active loop to detect device addition and deletion - **deprecated** — Library openscreen is deprecated as a failover for mDNS backend adb The default mDNS backend is now libadbmdns. Library openscreen is still included as a failover but is deprecated. Libadbmdns now also return .local hostname as part of services metadata. Linux USB backend now uses netlink instead of an active loop to detect devices addition/deletion. ### 36.0.2 - Date: 2025-09-01 - Version: 36.0.2 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/36.0.2 - **changed** — Make legacy USB backend the default on Linux instead of libusb due to instability reports - **fixed** — Fix bug where Samsung devices were not properly detected - **fixed** — Fix bug where old Android devices using USB class Miscellaneous (0xEF) were not properly detected - **fixed** — Fix bug where last character of a file was truncated when pulled or pushed on Windows adb Make legacy USB backend the default on Linux (instead of libusb) due to instability reports (device disconnection, interface read failure, and delayed netlink events preventing device detection). Fix bug where Samsung devices were not properly detected issue #404741058. Fix bug where old Android devices using USB class Miscellaneous (0xEF) were not properly detected issue #365009755. Fix bug where last character of a file was truncated when pulled or pushed [Windows only] issue #439152273. ### 36.0.0 - Date: 2025-04-01 - Version: 36.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/36.0.0 - **changed** — Rewritten libusb USB backend to use sync API instead of async API, improving reliability and fixing memory exhaustion on Linux - **added** — Libusb USB backend hot-plug support for Windows with USB speed detection - **changed** — Improved server-status output to display whether mdns is enabled - **fixed** — Fixed macOS bug where zero-length packets were not sent, resulting in stalled connection - **fixed** — Fixed use-after-free in libusb backend adb Re-written libusb USB backend (uses sync API instead of async API). Improves reliability and fixes memory exhaustion on Linux. Libusb USB backend hot-plug now supports for Windows (enables USB speed detection). Improved server-status now displays if mdns is enabled. Fixed macOS bug where zero-length packets were not sent, resulting in stalled connection issue #208675141. Fixed use-after-free in libusb backend. ### 35.0.2 - Date: 2024-07-01 - Version: 35.0.2 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/35.0.2 - **fixed** — Fix openscreen mDNS backend bug that caused server to crash on truncated query - **fixed** — Make openscreen mDNS backend work on macOS - **changed** — Make openscreen mDNS backend default on all platforms - **added** — Support to detect USB SuperSpeed+ current and negotiated speeds for diagnostic purposes - **fixed** — Release all USB interfaces on shutdown on all operating systems adb Fix openscreen mDNS backend bug bringing down server on truncated query issue #294120933. Make openscreen mDNS backend work on macOS. Make openscreen mDNS backend default on all platforms. Support to detect USB SuperSpeed+ (current and negotiated speeds) for diagnostic purposes. Graceful shutdown: Release all USB interfaces on shutdown (all OSes). ### 35.0.1 - Date: 2024-03-01 - Version: 35.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/35.0.1 adb Switch to libusb 1.0.27 ### 35.0.0 - Date: 2024-02-01 - Version: 35.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/35.0.0 - **changed** — Switch adb to use libusb as the default on Linux - **fixed** — Fix adb startup on hosts without USB - **fixed** — Fix adb hangs caused by USB devices incorrectly reporting zero-length descriptors - **fixed** — Fix return code of adb shell when device disconnects - **changed** — Limit the maximum size of the incoming packet queue in fastboot - **changed** — Remove bottlenecks in fastboot that limited download speeds to around 120MB/s, now achieving speeds up to 980MB/s on SuperSpeed+ buses adb Switch to libusb as the default on Linux issue #270205252. Fix adb startup on hosts without USB. Fix adb hangs caused by USB devices incorrectly reporting zero-length descriptors issue #302212871. Fix return code of adb shell when device disconnects issue #321787891. fastboot Limit the maximum size of the incoming packet queue. Remove bottlenecks that previously limited download speeds to around 120MB/s. Now fastboot can saturate a SuperSpeed+ bus and achieve speeds up to 980MB/s, depending on the device. ### 34.0.5 - Date: 2023-10-01 - Version: 34.0.5 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/34.0.5 - **changed** — adb now defaults to libusb on macOS - **fixed** — adb now returns a failure code (1) when wireless pairing fails instead of responding with a successful code - **added** — adb wait-for-disconnect is now operational for non-USB wireless debugging - **added** — Added new DbC interface for future support of ChromeOS over adb - **fixed** — Fixed flashall on Pixel 3 devices adb adb now defaults to libusb on macOS to address issue #270205252. Previously, adb responded with a successful code when wireless pairing fails. Resolved this by returning a failure code (1) and user-facing error ( error: protocol fault (couldn't read status message...)). echo $? now reports 1. adb wait-for-disconnect is now operational for non-USB (wireless debugging). Added new DbC interface for future support of ChromeOS over adb. fastboot Fixed flashall on Pixel 3 devices. ### 34.0.4 - Date: 2023-07-01 - Version: 34.0.4 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/34.0.4 - **fixed** — Propagate -a (gListenAll) when adb forks an adb host server so the flag works consistently with adb -a server nodaemon - **changed** — Faster root and unroot operations - **fixed** — Reland Flag(env) guarding clear endpoint (device) feature for OSX usb start - **fixed** — Mac: remove retries on invalid IO iterator to fix flashing failure with LIBUSB_TRANSFER_CANCELLED - **fixed** — Windows: fix "Sparse file is too large or invalid" when using flashall - **fixed** — All platforms: fix "ANDROID_PRODUCT_OUT not set" when using update adb Propagate -a (gListenAll) when adb forks an adb host server (previously, the flag only worked for adb -a server nodaemon) Faster root and unroot Reland Flag(env) guarding clear endpoint (device) feature for OSX usb start. ( issue #270205252). fastboot Mac: remove retries on invalid IO iterator (flashing failure with LIBUSB_TRANSFER_CANCELLED) Windows: fix "Sparse file is too large or invalid" when using "flashall" All platforms: fix "ANDROID_PRODUCT_OUT not set" when using "update" ### 34.0.1 - Date: 2023-03-01 - Version: 34.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/34.0.1 - **changed** — Reverted unstable connectivity (MacBook high speed cable) resolution due to adb install hang on macOS - **fixed** — Fixed mke2fs: Illegal or malformed device name while trying to determine filesystem size error on Windows adb macOS: Reverted "unstable connectivity (MacBook high speed cable)" resolution due to adb install hang ( issue #270205252). fastboot Windows: Fixed "mke2fs: Illegal or malformed device name while trying to determine filesystem size" error introduced in Platform tools 34.0.0 ( issue #271039230). ### 34.0.0 - Date: 2023-02-01 - Version: 34.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/34.0.0 - **fixed** — Zero length packet sends for macOS - **fixed** — Unstable connectivity on MacBook with high speed cable causing frequent adb disconnects - **changed** — Improved error message for adb push with insufficient number of arguments - **changed** — Improved flashing so flashall will now skip reboots to userspace if it can - **fixed** — Flashing recovery.img resulting in wrong AVB footer adb Fixed zero length packet sends for macOS (issuetracker: 208675141). Addressed unstable connectivity (MacBook high speed cable): frequent adb disconnects. Improved error message for adb push with insufficient number of arguments. fastboot Improved flashing: flashall will now skip reboots to userspace if it can. Fixed zero length packet sends for macOS (issuetracker: 208675141). Fixed flashing recovery.img resulting in wrong AVB footer. ### 33.0.3 - Date: 2022-08-01 - Version: 33.0.3 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/33.0.3 - **changed** — Don't retry adb root if first attempt failed - **fixed** — Fix track-devices duplicate entry - **added** — Add receive windowing to increase throughput on high-latency connections - **changed** — Provide more specific error messages in the more than one device failure cases - **fixed** — Reject unexpected reverse forward requests - **fixed** — Fix install-multi-package on Windows - **removed** — Remove e2fsdroid as part of SDK platform-tools - **changed** — Print OemCmdHandler return message on success adb Don't retry adb root if first attempt failed. Fix track-devices duplicate entry. Add receive windowing (increase throughput on high-latency connections). More specific error messages in the "more than one device" failure cases. Reject unexpected reverse forward requests. Fix install-multi-package on Windows. fastboot Remove e2fsdroid as part of SDK platform-tools. Print OemCmdHandler return message on success. ### 33.0.2 - Date: 2022-05-01 - Version: 33.0.2 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/33.0.2 fastboot Support for the vendor_kernel_boot partition. ### 33.0.1 - Date: 2022-03-01 - Version: 33.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/33.0.1 - **fixed** — Fix Windows mdns crashes - **fixed** — Fix enable-verity/disable-verity on old devices - **fixed** — Fix install multiple on old devices - **changed** — Improve help output to include all supported compression methods - **removed** — Remove systrace; use Studio Profiler, gpuinspector.dev, or Perfetto instead adb Fixes Windows mdns crashes. Fixes enable-verity/disable-verity on old devices. Fixes "install multiple" on old devices Improves the help output to include all supported compression methods. systrace Removed. Use Studio Profiler/gpuinspector.dev/Perfetto instead. ### 33.0.0 - Date: 2022-02-01 - Version: 33.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/33.0.0 - **fixed** — Fixed crashes when adb is run without any arguments adb Fixes the issue introduced in 32.0.0 of crashes when run without any arguments. ### 32.0.0 - Date: 2022-01-01 - Version: 32.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/32.0.0 - **added** — Universal binary for Apple M1 devices in adb - **fixed** — adb crashes when run without any arguments adb Universal binary for Apple M1 devices. Known issue: this version crashes when run without any arguments. ### 31.0.3 - Date: 2021-08-01 - Version: 31.0.3 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/31.0.3 fastboot Support flashing vbmeta_vendor.img for fastboot flashall / update. ### 31.0.2 - Date: 2021-04-01 - Version: 31.0.2 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/31.0.2 - **added** — Support forwarding to vsock on linux - **added** — Implement preliminary support for mDNS device discovery without a separately installed mDNS service, enabled by setting the environment variable ADB_MDNS_OPENSCREEN to 1 - **fixed** — Fix bug in adb track-devices where devices over wireless debugging wouldn't immediately receive updates - **fixed** — Don't fail when unable to get boot partition size - **changed** — Derive device locked state from property instead of parsing the kernel command line adb Support forwarding to vsock on linux. Fix bug in adb track-devices where devices over wireless debugging wouldn't immediately receive updates. Implement preliminary support for mDNS device discovery without a separately installed mDNS service. This is currently disabled by default, and can be enabled by setting the environment variable ADB_MDNS_OPENSCREEN to 1 when starting the adb server. fastboot Don't fail when unable to get boot partition size. Derive device locked state from property instead of parsing the kernel command line. ### 31.0.1 - Date: 2021-03-01 - Version: 31.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/31.0.1 - **changed** — Reduce TCP keepalive interval in adb - **changed** — Improve incremental installation performance in adb - **added** — Add support for compressed snapshot merges in fastboot - **changed** — Restore legacy A/B support in fastboot adb Reduce TCP keepalive interval. Improve incremental installation performance. fastboot Add support for compressed snapshot merges. Restore legacy A/B support. ### 31.0.0 - Date: 2021-02-01 - Version: 31.0.0 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/31.0.0 adb Disable compression on pull by default. ### 30.0.5 - Date: 2020-11-01 - Version: 30.0.5 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/30.0.5 - **changed** — Improve performance of adb push when pushing many files over a high-latency connection - **changed** — Improve adb push/pull performance on Windows - **fixed** — Fix adb push --sync with multiple inputs - **changed** — Improve performance of incremental apk installation - **changed** — Improve error handling for incremental apk installation adb Improve performance of adb push when pushing many files over a high-latency connection. Improve adb push/pull performance on Windows. Fix adb push --sync with multiple inputs. Improve performance of incremental apk installation. Improve error handling for incremental apk installation. ### 30.0.4 - Date: 2020-07-01 - Version: 30.0.4 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/30.0.4 - **fixed** — Fix fallback to non-incremental apk installation on pre-Android 11 devices - **fixed** — Fix adb install-multi-package - **fixed** — Fix crashes related to adb wireless pairing - **changed** — Improve error messages in adb - **changed** — Improve console output on fastboot oem commands - **fixed** — Fix fastboot flashall on older devices such as Nexus 7 adb Fix fallback to non-incremental apk installation on pre-Android 11 devices. Fix adb install-multi-package. Fix some more crashes related to adb wireless pairing. Improve some error messages. fastboot Improve console output on fastboot oem commands. Fix fastboot flashall on older devices such as Nexus 7. ### 30.0.3 - Date: 2020-06-01 - Version: 30.0.3 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/30.0.3 - **fixed** — Fix installation of APKs signed with v4 signature scheme on pre-Android 11 devices - **fixed** — Fix crash when authenticating without ADB_VENDOR_KEYS - **fixed** — Fix crash when using adb -H adb Fix installation of APKs signed with v4 signature scheme on pre-Android 11 devices. Fix crash when authenticating without ADB_VENDOR_KEYS. Fix crash when using adb -H. ### 30.0.2 - Date: 2020-06-01 - Version: 30.0.2 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/30.0.2 - **changed** — Improve adb wireless pairing - **fixed** — Fix hang in adb logcat when run before a device is connected - **added** — Add adb transport-id to allow scripts to safely wait for a device to go away after root/unroot/reboot adb Improve adb wireless pairing. Fix hang in adb logcat when run before a device is connected. Add adb transport-id to allow scripts to safely wait for a device to go away after root/unroot/reboot. ### 30.0.1 - Date: 2020-05-01 - Version: 30.0.1 - Original notes: https://developer.android.com/tools/releases/platform-tools - Permalink: https://whatsnew.fyi/product/android-platform-tools/releases/30.0.1 - **changed** — Disable adb mdns auto-connection by default, which can be reenabled with the ADB_MDNS_AUTO_CONNECT environment variable - **changed** — Improve performance of adb install-multi on Android 10 or newer devices - **fixed** — Fix timeout when using adb root/unroot on a device connected over TCP - **changed** — Update support for wireless pairing adb Disable adb mdns auto-connection by default. This can be reenabled with the ADB_MDNS_AUTO_CONNECT environment variable. Improve performance of adb install-multi on Android 10 or newer devices. Fix timeout when using adb root/unroot on a device connected over TCP. Update support for wireless pairing.