# How to Connect Your Android Device to Universal Android Debloater Next Generation

> Easily connect your Android device to Universal Android Debloater Next Generation. Follow simple steps enabling USB debugging and authorizing ADB for seamless debloating.

- Repository: [Universal-Debloater-Alliance/universal-android-debloater-next-generation](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation)
- Tags: how-to-guide
- Published: 2026-06-18

---

**Enable USB debugging on your Android phone, install ADB on your computer, authorize the connection when prompted, then run `uad devices` to verify that Universal Android Debloater Next Generation detects your device.**

Universal Android Debloater Next Generation (UAD-ng) communicates with Android devices through the Android Debug Bridge (ADB) protocol. To connect your Android device to Universal Android Debloater Next Generation, you must configure both your phone and computer to establish a trusted debugging session. This guide covers the complete setup process using the implementation details found in the `Universal-Debloater-Alliance/universal-android-debloater-next-generation` repository.

## Enable USB Debugging on Your Android Device

Before UAD-ng can interact with your phone, you must activate developer options and USB debugging in the Android system settings.

1. Open **Settings → About phone** and tap **Build number** seven times to unlock **Developer options**.
2. Navigate to **Settings → Developer options** and toggle **USB debugging** to the ON position.

## Install ADB on Your Host Computer

UAD-ng requires the `adb` binary to communicate with devices. According to the CLI documentation in [`crates/uad-cli/README.md`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-cli/README.md), the ADB command must be available on your system PATH.

Verify your installation by running:

```bash
adb version

```

If the command returns version information, ADB is installed correctly. If not, download the Android SDK Platform-Tools and add the directory containing `adb` to your system PATH.

## Authorize Your Computer on the Android Device

When you connect your phone via USB for the first time, Android displays a security prompt to prevent unauthorized access.

1. Connect your device to your computer using a USB cable.
2. On your phone, tap **OK** when prompted with **"Allow USB debugging?"** Optionally check **Always allow from this computer** to prevent future authorization prompts.
3. Verify the connection by running `adb devices` in your terminal. You should see output like `SERIAL123 device`, indicating the device is authorized and ready for UAD-ng operations.

## Detect and Select Your Device in UAD-ng

Once ADB is configured and your device is authorized, you can connect your Android device to Universal Android Debloater Next Generation using either the CLI or GUI interface.

### CLI Device Detection

Run the following command to list all connected and authorized devices:

```bash
uad devices

```

To target a specific device when multiple are attached, use the `--device` flag followed by the serial number shown in `adb devices`:

```bash
uad list --device SERIAL123
uad uninstall com.facebook.katana --device SERIAL123

```

### GUI Device Selection

In the graphical interface, the device detection logic is implemented in [`crates/uad-gui/src/views/list.rs`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-gui/src/views/list.rs). The application listens for `Message::ADBSatisfied` events and automatically populates the "Devices" view with authorized phones. Internally, the selected device's ADB identifier is stored in the `Phone.adb_id` field.

Select your device from the drop-down list to perform operations on that specific phone. The GUI filters out unauthorized devices and only displays phones that have completed the ADB authorization handshake.

## Troubleshooting Common Connection Issues

If UAD-ng fails to detect your Android device, verify the following configurations:

- **No devices shown**: Ensure USB debugging is enabled in Developer options, try a different USB cable or port, and confirm the device appears as `device` (not `unauthorized`) when running `adb devices`.
- **Permission denied**: Some system packages require root access to modify. UAD-ng can only disable or uninstall packages that the current user has permission to alter according to Android's security model.
- **ADB not found**: Install the Android SDK Platform-Tools and ensure the directory containing `adb` is added to your system PATH. The underlying ADB wrapper in [`crates/uad-core/src/adb.rs`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-core/src/adb.rs) expects the command to be reachable as `adb`.

## Summary

- **Enable USB debugging** by tapping Build number seven times and activating the toggle in Developer options.
- **Install ADB** on your computer and verify it with `adb version` before launching UAD-ng.
- **Authorize your computer** when prompted on your Android device, then confirm successful pairing with `adb devices`.
- **Use `uad devices`** to list connected phones, and target specific devices with the `--device` flag in CLI or the drop-down selector in GUI.
- **Reference source files** like [`crates/uad-cli/README.md`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-cli/README.md) and [`crates/uad-gui/src/views/list.rs`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-gui/src/views/list.rs) for implementation details on device handling and the `ACommand` wrapper.

## Frequently Asked Questions

### Do I need root access to use Universal Android Debloater Next Generation?

No, UAD-ng does not require root access for basic operation. However, certain system packages can only be disabled or uninstalled with elevated permissions. Without root, you can only modify packages that your user account has permission to change as enforced by the Android Package Manager.

### Why does UAD-ng show "no devices found" when my phone is connected?

This typically occurs when USB debugging is not enabled, the device is not authorized (check `adb devices` for `unauthorized` status), or the ADB binary is not in your system PATH. Ensure you accepted the "Allow USB debugging?" prompt on your phone and that your cable supports data transfer rather than charging only.

### Can I use UAD-ng with multiple Android devices simultaneously?

Yes. When multiple devices are connected, use the `--device SERIAL` flag in the CLI to specify which device to target, or select the desired device from the drop-down list in the GUI. The serial number corresponds to the ID shown in `adb devices` and is stored internally in `Phone.adb_id` according to the GUI source code.

### Where does UAD-ng store the device identifier in the GUI code?

According to the source code in [`crates/uad-gui/src/views/list.rs`](https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation/blob/main/crates/uad-gui/src/views/list.rs), the application stores the ADB device identifier in the `Phone.adb_id` field after processing the `Message::ADBSatisfied` event during device detection. This allows the GUI to maintain state for the selected device across different operations.