general_info/
general_info.rs

1/// This example demonstrates how to connect to an Android device and get general information
2/// about the connected devices, adb help and version
3/// To run this example, execute:
4/// ```sh
5/// cargo run --example general_info
6/// ```
7use adb_utils::general::{ADBDevices, ADBHelp, ADBVersion, DeviceInfo, Version};
8use adb_utils::manager::ADBManager;
9
10fn main() {
11    let mut manager = ADBManager::new();
12    match manager.connect("192.168.0.105", 33363) {
13        Ok(()) => println!("Successfully connected"),
14        Err(e) => println!("Could not connect: {}", e),
15    }
16
17    let mut list = ADBDevices::default().long();
18    match manager.execute(&mut list) {
19        Ok(ok) => {
20            println!("{}", ok.to_string());
21
22            let parsed = DeviceInfo::from(ok);
23            println!(
24                "{} {} {}",
25                parsed.product, parsed.model, parsed.transport_id
26            );
27        }
28        Err(err) => println!("Error: {}", err),
29    }
30
31    let mut help = ADBHelp::default();
32    println!("{}", manager.execute(&mut help).unwrap().to_string());
33
34    let mut version = ADBVersion::default();
35    let version = Version::from(manager.execute(&mut version).unwrap());
36    println!(
37        "adb version: {}, version: {}, install: {}",
38        version.adb_version, version.version, version.install_path
39    );
40}