Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

📱 Android DEX

Your Phone, Reimagined as a Desktop

Platform Platform Framework Android License

🚀 Quick Start

Connect Your Device

ModeSetup
USBPlug in your phone · Enable USB Debugging
Wi-FiSame network · Enable Wireless Debugging

Launch Options

🪟 Windows

Auto-detect (Recommended)

android_dex_win.exe

Force USB Connection

android_dex_win.exe --usb

Connect via IP Address

android_dex_win.exe 192.168.1.100

Connect via IP & Port

android_dex_win.exe 192.168.1.100:5555

🐧 Linux

  1. Prepare: Extract android_dex_linux.tar.gz and open terminal in the folder.
  2. Setup: Make the script executable:
    chmod +x run_android_dex.sh
  3. Launch:
    ./run_android_dex.sh

Note: The run_android_dex.sh script automatically checks if your Linux environment is compatible (drivers, graphics, and dependencies) and ready to launch the session.


📖 Deep-Dive Documentation

Check out these detailed guides to understand exactly how Android DEX works under the hood:

  1. Architectural Design — Three-layer system design, responsibilities, and data flow.
  2. Boot & Initialization — Step-by-step connection flow with progress stages.
  3. Reconnection System — Smart auto-healing, recovery phases, and UI overlay.
  4. Real-Time Data Model — State store, JSON telemetry protocols, and message handling.
  5. Error Handling — User-facing messaging pipelines and full fallback reference.
  6. System Modules — Internal component roles, public APIs, and singletons.
  7. Device Manager — ADB device selection, UI dialogs, and IP connections.

🛠️ How It Works — The Handshake Protocol

The system uses a three-layer architecture with a cryptographic-style handshake before the desktop UI unlocks. Every component must confirm readiness before the session begins.

%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#0078D4', 'primaryTextColor': '#fff', 'primaryBorderColor': '#0078D4', 'lineColor': '#888', 'secondaryColor': '#0061af', 'tertiaryColor': '#222', 'noteBkgColor': '#333', 'noteTextColor': '#fff', 'noteBorderColor': '#555' }}}%% sequenceDiagram participant PC as Windows Side (Flutter/ADB) participant JAR as Android Logic Engine (Java JAR) participant APK as Android App Hub (Kotlin APK) Note over PC: 1. ADB Initialization (startAdbBlocking) PC->>PC: 2. Local Server Setup (JarServer & ApkServer .start) Note over PC,JAR: Phase 1: Engine Deployment (Bridge) PC->>JAR: Push JAR to Device (via ADB Pipe) PC->>JAR: Launch JAR Runtime (adb.startJarRuntime) JAR-->>PC: Handshake Response: "jar.hello" (Logic Engine Ready) Note over PC,APK: Phase 2: Feature Manager Startup (Hub) PC->>APK: Check Install & Install if Missing PC->>APK: Trigger Service startup (ServerStartService) APK-->>PC: WebSocket Handshake: "apk.hello" (App Hub Ready) PC->>APK: 3. Start Extended Notification & Media Services Note over PC,APK: System Synchronized: Desktop UI Unlocked

📱 App Preview

Desktop Home Interface Home Screen


App ListMultiple Apps
App DashboardMulti-App View
Media ControlController 1
Media CenterAndroid Control
Controller 2Controller 3
Audio OverlayMedia Preferences

🏗️ Three-Layer Architecture

Android DEX distributes responsibilities across three specialized layers:

LayerRoleTechnology
Windows SideOrchestration, UI, StreamingFlutter · ADB · Native C++ · scrcpy
Logic EngineLow-level device commandsJava · ADB Shell
Feature HubTelemetry, Notifications, MediaKotlin · Android SDK

Deep-dive: Architecture »


📋 Getting Started

Prerequisites

  • OS: Windows 10+ or Modern Linux (Ubuntu, Fedora, etc.)
  • Device: Android device running Android 8.0+
  • Drivers: ADB is bundled — no separate installation needed

Step-by-Step

  1. Enable Developer Options on your phone

    • Settings → About Phone → tap Build Number 7 times
  2. Enable USB Debugging

    • Settings → Developer Options → USB Debugging → ON
  3. Plug in your phone (for USB) or enable Wireless Debugging (for Wi-Fi)

  4. Launch Android DEX — watch the boot progress bars fill to 100%

  5. The desktop unlocks — your Android is now a full Windows desktop experience

If connection fails, a "Select Device" button appears in the boot screen — click it to open the ADB Manager and pick your device without restarting.


Engineered for performance. Optimized for productivity.

Built by @shrey113

关于 About

Enable a full desktop experience from any Android device over Wi‑Fi. No root, scrcpy-powered, Flutter desktop app with wireless ADB, per‑app audio, and quick controls.
adbandroidandroid-applicationandroid-developmentandroid-dexandroid-librarydesktopdesktop-environmentfluttergamegame-developmentsamsung-dexscrcpyscrcpy-cliscrcpy-enginescrcpy-guiscrcpy-uiscrcpy-wirelesswireless-debugging

语言 Languages

HTML87.8%
CSS12.2%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
33
Total Commits
峰值: 26次/周
Less
More

核心贡献者 Contributors