Skip to content

shenxueyuan/aya

 
 

Repository files navigation

AYA

Android ADB desktop app.

AYA - Open source desktop app for controlling android devices | Product Hunt

Windows macOS Linux Downloads License

AYA is a desktop application for easily controlling android devices, which can be considered as a GUI wrapper for ADB.

Installation

Click here to download and install AYA. Windows x64, Mac arm64, Mac x64 and Linux x86_64 are supported.

Features

  • Screen mirror
  • File explorer
  • Application manager
  • Process monitor
  • Layout inspector
  • CPU, memory and FPS monitor
  • Logcat viewer
  • Interactive shell

For more detailed usage instructions, please read the documentation at aya.liriliri.io!

功能详解

技术栈

Electron 30 + React 19 + TypeScript + Vite + MobX + @devicefarmer/adbkit + @yume-chan/scrcpy + luna-* UI + xterm.js + protobuf

项目结构

src/main/          # Electron 主进程 (ADB 核心/窗口管理/持久化)
src/main/lib/adb/  # ADB 子模块: base, server, file, package, scrcpy, logcat, shell, fps, cpu, port, webview
src/renderer/main/ # 主窗口 (10 个功能面板 + MobX Store)
src/renderer/screencast/ # 投屏窗口 (Scrcpy + WebCodecs + 录制)
src/renderer/devices/    # 设备管理窗口 (配对/连接)
src/renderer/avd/        # AVD 模拟器管理窗口
src/common/        # 共享类型/多语言/主题
src/preload/       # 预加载脚本
src/share/         # git submodule (electron-share)
server/            # Android 设备端服务 (Java + Protobuf)

主窗口 — 10 个功能面板

面板 功能
Overview 设备概览:品牌/型号/系统/CPU/内存/存储/屏幕/WiFi/Root;字体缩放调整、端口映射、遥控器
File 文件管理器:目录浏览、上传/下载、创建/删除/移动文件
Application 应用管理:列表(图标/版本/大小)、安装/卸载/启停/清除数据
Process 进程监控:PID/CPU/内存/用户/名称
Performance 性能监控:CPU 负载/温度、内存、电池
Shell 交互式终端:xterm.js、多会话
Layout 布局检查器:UI 层级树、节点属性、截图标注
Screenshot 截图:设备截图、保存本地
Logcat 日志:实时流、暂停/恢复、级别过滤
Webview WebView 调试:列表、DevTools 入口

投屏窗口 (Screencast)

Scrcpy 协议 + WebCodecs 解码、键盘/鼠标控制、音频播放、屏幕录制(WebM)、息屏控制、窗口置顶、剪贴板同步、码率/分辨率设置

设备管理窗口 (Devices)

设备列表、WiFi 无线连接、远程设备连接/断开、配对码配对

AVD 模拟器管理窗口

模拟器列表(名称/ABI/SDK/内存/分辨率)、启动/停止/擦除数据

设备端服务

  • aya.dex 推送到设备,通过 app_process 启动 io.liriliri.aya.Server
  • Unix socket localabstract:aya + Protobuf 通信
  • 提供:getPackageInfosstartFileServerisFileServerRunning

设置项

languagethemeadbPathkillAdbWhenExituseNativeTitlebar

Related Projects

  • licia: Utility library used by AYA.
  • luna: UI components used by AYA.
  • vivy: Icon image generation.
  • echo: Harmony OS version of AYA.

Contribution

Read Contributing Guide for development setup instructions.

About

Android ADB desktop app

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 76.1%
  • SCSS 9.9%
  • JavaScript 6.9%
  • Kotlin 3.4%
  • CSS 3.2%
  • Shell 0.4%
  • HTML 0.1%