Announcing adb_client, an ADB (Android Debug Bridge) implementation in full Rust

140 points cocool97

adb\_client is a crate allowing Rust programmers to interact with the ADB server, without needing to call \adb\\ binary in code.

Main features :

  • Full Rust, no need to use shell commands
  • Currently only support server TCP/IP protocol
  • Highly configurable
  • Easy to use !

An example binary is also provided, aiming to give an alternative to \adb\\.

Usage example:

use adb\_client::AdbTcpConnexion;

use std::net::Ipv4Addr;

let mut connexion = AdbTcpConnexion::new(Ipv4Addr::from(\[127,0,0,1\]), 5037).unwrap();

let mut input = File::open(Path::new(&filename)).unwrap();

connexion.send(None, &mut input, &path)?;

Some features may be missing, PRs are welcome !

Links: GitHub crates.io