A Python implementation of ADB with shell and FileSync functionality.
Project description
Documentation for this package can be found at https://adb-shell.readthedocs.io/.
Prebuilt wheel can be downloaded from nightly.link.
This Python package implements ADB shell and FileSync functionality. It originated from python-adb.
Installation
pip install adb-shell
Async
To utilize the async version of this code, you must install into a Python 3.7+ environment via:
pip install adb-shell[async]
USB Support (Experimental)
To connect to a device via USB, install this package via:
pip install adb-shell[usb]
Example Usage
(Based on androidtv/adb_manager.py)
from adb_shell.adb_device import AdbDeviceTcp, AdbDeviceUsb
from adb_shell.auth.sign_pythonrsa import PythonRSASigner
# Load the public and private keys
adbkey = 'path/to/adbkey'
with open(adbkey) as f:
priv = f.read()
with open(adbkey + '.pub') as f:
pub = f.read()
signer = PythonRSASigner(pub, priv)
# Connect
device1 = AdbDeviceTcp('192.168.0.222', 5555, default_transport_timeout_s=9.)
device1.connect(rsa_keys=[signer], auth_timeout_s=0.1)
# Connect via USB (package must be installed via `pip install adb-shell[usb])`
device2 = AdbDeviceUsb()
device2.connect(rsa_keys=[signer], auth_timeout_s=0.1)
# Send a shell command
response1 = device1.shell('echo TEST1')
response2 = device2.shell('echo TEST2')
Generate ADB Key Files
If you need to generate a key, you can do so as follows.
from adb_shell.auth.keygen import keygen
keygen('path/to/adbkey')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
adb_shell-0.4.3.tar.gz
(43.9 kB
view hashes)
Built Distribution
adb_shell-0.4.3-py3-none-any.whl
(54.5 kB
view hashes)
Close
Hashes for adb_shell-0.4.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afaaaecb2074596c8c7d7df5cf3625f573346f1ad258a6664b2b64b9f06a5020 |
|
MD5 | 2bc37329e5cf6cb0ddaf672a59191a5f |
|
BLAKE2b-256 | d07daf1e3c0efba2a478740e5041b6c218ce4ed6a2f305e5b22ff736a8fe542e |