Skip to content
forked from google/python-adb

Python ADB + Fastboot implementation

License

Notifications You must be signed in to change notification settings

luci/python-adb

This branch is 67 commits ahead of, 59 commits behind google/python-adb:master.

Folders and files

NameName
Last commit message
Last commit date
Aug 16, 2017
Jun 18, 2014
Jan 31, 2016
Jun 18, 2014
Oct 27, 2015
Aug 30, 2017
Nov 6, 2015
Nov 6, 2015
Nov 6, 2015
Jun 18, 2014
Nov 6, 2015
Nov 6, 2015
Jun 8, 2016
Feb 16, 2016
Nov 6, 2015
Feb 16, 2016
Nov 6, 2015
Apr 11, 2016

Repository files navigation

python-adb

This repository contains a pure-python implementation of the ADB and Fastboot protocols, using libusb1 for USB communications.

This is a complete replacement and rearchitecture of the Android project's ADB and fastboot code available at https://github.com/android/platform_system_core/tree/master/adb

This code is mainly targeted to users that need to communicate with Android devices in an automated fashion, such as in automated testing. It does not have a daemon between the client and the device, and therefore does not support multiple simultaneous commands to the same device. It does support any number of devices and never communicates with a device that it wasn't intended to, unlike the Android project's ADB.

Pros:
  • Simpler code due to use of libusb1 and Python.
  • API can be used by other Python code easily.
  • Errors are propagated with tracebacks, helping debug connectivity issues.
Cons:
  • Technically slower due to Python, mitigated by no daemon.
  • Only one command per device at a time.
  • More dependencies than Android's ADB.
Dependencies:
  • libusb1 (1.0.16+)
  • python-gflags (2.0+)
  • python-libusb1 (1.2.0+)
  • python-progressbar (for fastboot_debug, 2.3+)
  • python-m2crypto (0.21.1+)

About

Python ADB + Fastboot implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.4%
  • Shell 0.6%