Skip to content

h33h/iadb-ios

Repository files navigation

iADB

Build & Test App Store Release License: MIT

iADB icon showing Android and a terminal inside an iPhone

Run Android Wireless Debugging workflows from an iPhone or iPad.

iADB discovers Android devices on local Wi-Fi, pairs through Wireless Debugging, and gives you common ADB tools without a desktop computer. The app uses no account, ads, analytics, tracking, or developer-operated relay.

Highlights

  • Five focused tabs: Device, Files, Apps, Console, and Screens
  • Pairing-code flow, local discovery, manual endpoints, and quick reconnect
  • Native SwiftUI interface with Dynamic Type and VoiceOver support
  • Shell and Logcat share one Console without mixing their controls
  • Release workflow for signed archives, App Store validation, and optional TestFlight upload

Features

Area Available actions
Device Discover, pair, connect, reconnect, inspect device details, and manage saved connections.
Files Browse paths, preview and download files, upload content, create folders or files, rename, move, duplicate, and delete.
Apps Search, filter, and sort packages; install APKs; launch, force stop, clear data, or uninstall apps.
Console Run and stop shell commands, reuse or pin history, filter Logcat, save filters, pause the live display, and export logs.
Screens Capture, inspect, zoom, share, copy, save, and delete Android screenshots.

Screenshots

All repository captures use the deterministic, fictional App Store fixture.

Device Files Shell
Connected Android device dashboard Android file manager ADB Shell history and pinned commands
Apps Logs Screens
Installed app library Live filtered Logcat output Android screenshot gallery

Getting Started

Requirements

  • Xcode 26+
  • iOS 17+
  • Homebrew
  • xcodegen

Local Setup

  1. Install xcodegen:
brew install xcodegen
  1. Generate the Xcode project:
scripts/generate-project.sh
  1. Open iADB.xcodeproj in Xcode.
  2. Build and run the iADB scheme.

Running Tests

scripts/generate-project.sh
xcodebuild test \
  -project iADB.xcodeproj \
  -scheme iADB \
  -destination 'platform=iOS Simulator,name=iPhone 17 Pro Max'

Debug Android Emulator Mode

Debug builds include an Android Emulator panel under Device › Settings for production-like checks against a local emulator.

Use the iADB Android Emulator scheme or enable Use Android Emulator in that panel. When the configured ADB endpoint is reachable, iADB injects a synthetic discovered device. ADBClient stays live, so connect, shell, files, apps, logcat, and screenshots still use the real ADB protocol.

Defaults:

  • Host: 127.0.0.1
  • Port: 5555
  • Launch argument: --iadb-debug-android-emulator
  • Environment overrides: IADB_DEBUG_ANDROID_HOST, IADB_DEBUG_ANDROID_PORT

How To Connect

  1. Enable Developer Options on the Android device.
  2. Enable Wireless debugging.
  3. Open Pair device with pairing code on Android.
  4. In iADB, choose the discovered device or use manual pairing.
  5. Enter the pairing code and connect.

Both devices must be on the same Wi-Fi network.

Tech Stack

  • SwiftUI
  • The Composable Architecture
  • XcodeGen
  • GitHub Actions

CI

GitHub Actions provide:

  • build and test on pull requests and pushes to main
  • signed App Store archive, validation, and optional TestFlight upload from version tags or a manual run

The release workflow needs Apple signing and App Store Connect secrets before it can create or upload a signed build.

Release Resources

Regenerate the App Store screenshots or run the offline release gate from the repository root:

scripts/capture-app-store-screenshots.sh
scripts/validate-app-store-release.sh

Roadmap

  • Expand connection diagnostics and recovery hints
  • Improve file management workflows for larger transfers
  • Add more automated coverage around device-specific edge cases
  • Automate App Store Connect metadata delivery

Project Layout

  • iADB/ app source code
  • iADBTests/ unit and feature tests
  • iADBUITests/ UI and App Store screenshot tests
  • .github/workflows/ CI pipelines
  • scripts/ project, test, screenshot, and release tools
  • app-store/ icon, screenshots, metadata, and release checklist
  • design-system/ UI principles and design tokens

Contributing

See CONTRIBUTING.md for local setup and pull request expectations.

License

Released under the MIT License.

About

Native iOS app for Android Wireless Debugging, pairing, shell, files, logcat, and screenshots over ADB.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages