A beautiful, native macOS app for managing Android devices via ADB.
![]() |
![]() |
| Device Details | Device Search |
![]() |
![]() |
| Device Pairing | Port Forwarding |
brew tap zaphkiel-ivanovna/tap
brew install --cask adb-studioADB Studio is a modern, native macOS application designed to simplify Android device management through ADB. Built entirely with SwiftUI, it provides a clean and intuitive interface for developers and power users who work with Android devices daily.
No more memorizing ADB commands or switching between terminal windows. ADB Studio brings all essential device management features into a beautiful, unified interface.
- Automatic Device Discovery — Detects Android devices via mDNS/Bonjour for seamless wireless connections
- USB & WiFi Support — Connect devices via USB cable or wirelessly over your local network
- One-Click Pairing — Pair new devices for wireless debugging with just a few clicks
- Screen Mirroring & Control — View and control multiple Android devices from your Mac in dedicated windows, powered by scrcpy
- APK Installation — Drag & drop APK files to install apps directly on your device
- App Management — View, launch, disable, and uninstall installed apps on your device
- Screenshot Capture — Take screenshots instantly and copy to clipboard or save to Downloads
- Text Input — Send text directly to your Android device from your Mac keyboard
- Quick Actions — Back, Home, Menu, and Enter buttons for rapid navigation
- Port Forwarding — Manage reverse TCP ports for development servers (React Native, etc.)
- TCP/IP Mode — Enable wireless debugging on USB-connected devices
- Device History — Remember devices and assign custom names for easy identification
- Native Performance — Built with SwiftUI for a fast, responsive experience
- macOS 14.0 (Sonoma) or later
- ADB installed via:
- Android Studio
- Homebrew:
brew install android-platform-tools - Or manually in
~/Library/Android/sdk/platform-tools
Download the latest release from the Releases page:
- DMG — Drag to Applications folder
- ZIP — Extract and move to Applications
Note: Since the app is not notarized, macOS may show a warning. To open it:
- Right-click the app → Open → Open, or
- Run
xattr -cr /Applications/ADB-Studio.appin Terminal
# Clone the repository
git clone https://github.com/Zaphkiel-Ivanovna/adb-studio.git
cd adb-studio
# Build with Xcode
xcodebuild -scheme "ADB-Studio" -configuration Release build
# Or open in Xcode
open ADB-Studio.xcodeproj- Enable Developer Options and USB Debugging on your Android device
- Connect your device via USB cable
- The device will appear automatically in ADB Studio
- Enable Wireless Debugging in Developer Options on your Android device
- Click Connect via WiFi (⌘K) in ADB Studio
- Scan — Devices on your network are discovered automatically
- Pair — For first-time connections, enter the 6-digit pairing code
- Connect — Click to establish the connection
| Tool | Description |
|---|---|
| Screenshot | Capture device screen to clipboard or save as PNG |
| Send Text | Type on your Mac, send to Android device |
| Quick Actions | Back, Home, Menu, Enter buttons |
| TCP/IP Mode | Enable wireless debugging via USB |
| Install APK | Drag & drop or select APK files to install |
| Manage Apps | Browse, search, and manage installed applications |
Mirror and control your Android device's screen from your Mac:
- Select a connected device
- Go to the Mirror tab
- Click Open Mirror Window — a dedicated window opens with the device screen
- Use your mouse to tap, drag, and scroll; your keyboard sends key events and text input
Multiple devices can be mirrored in parallel — each session runs in its own window with its own video decoder.
Mirroring is powered by scrcpy 3.3.4. The server binary and its Apache License 2.0 are embedded in the app bundle.
Perfect for React Native, Expo, or any development server:
- Select a connected device
- Go to the Ports section
- Click Add Port
- Enter the port number (e.g.,
8081for Metro) - The reverse tunnel is created automatically
Install apps directly from your Mac:
- Select a connected device
- Drag & drop an APK file onto the drop zone, or click to open a file picker
- The installation progress is displayed in real-time
- Cancel anytime if needed — the installation process will be terminated
View and manage all installed applications on your device:
- Select a connected device
- Expand the Installed Apps section
- Use the filter to show: User Apps, System, All, or Disabled
- Search apps by name or package name
- Click the ... menu on any app to:
- Launch — Open the app on device
- Force Stop — Stop the running app
- Uninstall — Remove the app (with confirmation)
- Uninstall (Keep Data) — Remove app but preserve data
- Disable/Enable — Toggle app without uninstalling
- App Settings — Open Android settings for this app
Note: System apps cannot be uninstalled but can be disabled.
| Shortcut | Action |
|---|---|
⌘R |
Refresh devices |
⌘K |
Connect via WiFi |
⌘, |
Open Settings |
- Language: Swift 5.9+
- UI Framework: SwiftUI
- Target: macOS 14+ (Sonoma)
- Architecture: MVVM with dependency injection
- Device Discovery: mDNS/Bonjour (Network framework)
ADB-Studio/
├── App/
│ ├── ADB_StudioApp.swift # App entry point
│ └── DependencyContainer.swift # DI container
├── Models/
│ ├── Device.swift # Device model
│ ├── DeviceConnection.swift # Connection types
│ ├── PortForward.swift # Port forwarding
│ ├── InstalledApp.swift # Installed app model
│ └── ADBError.swift # Error types
├── Services/
│ ├── ADB/ # ADB command execution
│ ├── Device/ # Device management
│ ├── Discovery/ # mDNS discovery
│ ├── Media/ # Screenshot service
│ └── Shell/ # Process execution
├── ViewModels/
│ ├── DeviceDetailViewModel.swift
│ └── InstalledAppsViewModel.swift
└── Views/
├── Main/ # Main window views
├── DeviceList/ # Device list components
├── DeviceDetail/ # Device detail views
├── Connection/ # WiFi connection sheet
├── PortForward/ # Port forwarding views
├── APKInstaller/ # APK installation views
├── InstalledApps/ # App management views
├── Tools/ # Device tools
└── Settings/ # App settings
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
If you find ADB Studio useful, consider supporting its development:
This project is licensed under the MIT License - see the LICENSE file for details.
- Android Debug Bridge (ADB) by Google
- scrcpy by Romain Vimont — screen mirroring server (Apache 2.0)
- Built with SwiftUI
Made with ❤️ by Zaphkiel Ivanovna



