基于 ADB 封装了一个桌面应用 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
surunzi
V2EX    分享创造

基于 ADB 封装了一个桌面应用

  •  
  •   surunzi 344 天前 3490 次点击
    这是一个创建于 344 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前端转半个安卓客户端开发,偶尔会用 adb 执行一些命令。刚好最近需要做跟 adb 相关的开发任务,就用 electron 封装了一个 GUI 界面。虽然目前功能还达不到想要的样子,但基本也算是可用状态了。已支持包括常用的手机基本信息查看、应用管理、屏幕截图、终端、进程管理等,还有些没那么常见的日志查看、性能监控和 webview 调试。

    后续计划加上文件管理和远程操控等功能,有兴趣的可以下载试用看看,支持 mac arm 和 windows x64 ,如果有任何建议或者使用问题可以直接在仓库中反馈。

    https://github.com/liriliri/aya

    应用管理:

    application

    进程管理:

    process

    终端:

    shell

    Logcat:

    logcat

    性能监控:

    performance

    34 条回复    2025-04-21 09:19:37 +08:00
    tool2dx
        1
    tool2dx  
       344 天前 via Android   3
    ADB 界面能整那么花哨,不亏是专业前端。

    可以考虑整合一下 scrcpy ,最近这软件加了一个很 cool 的功能,就是给每一个 APP 独立建一个窗口串流,一个手机能同时多开好多个 APP ,完美满足了我对安卓桌面多任务窗口化的需求。
    garywill
        2
    garywill  
       344 天前
    好耶,感觉正缺少这样的 app
    surunzi
        3
    surunzi  
    OP
       344 天前
    @tool2dx 远程操控是打算基于 scrcpy 的,不过作为 android 半吊子,要研究下它的协议实现相比其它功能感觉更花时间的样子,所以打算放在最后面实现。
    calloc
        4
    calloc  
       344 天前 via Android   1
    计划支持 linux 吗
    lloovve
        5
    lloovve  
       344 天前 via iPhone
    太需要独立的 logcat 了
    lloovve
        6
    lloovve  
       344 天前 via iPhone
    @tool2dx 具体说一下,需要系统支持分屏么?
    hwb
        7
    hwb  
       343 天前
    可以搭配这个,直接无线
    https://github.com/wb-hwang/AutoWifiDebugHelper
    lx0758
        8
    lx0758  
       343 天前
    可以可以, 爱了爱了
    tool2dx
        9
    tool2dx  
       343 天前
    @lloovve 感觉安卓 11 以上都能用,我在安卓 tv 上用了 scrcpy virtual display ,系统不带分屏,也没问题。
    lx0758
        10
    lx0758  
       343 天前
    提点小建议呢...
    1. 终端 exit 了之后不知道怎么再开一个
    2. 能不能支持多个终端标签
    surunzi
        11
    surunzi  
    OP
       343 天前   1
    @calloc 可能出正式版后才会考虑支持
    surunzi
        12
    surunzi  
    OP
       343 天前
    @lx0758 可以的,后续优化下
    kyleLin
        13
    kyleLin  
       343 天前
    macos 下载打开之后提示镜像损坏了。
    surunzi
        14
    surunzi  
    OP
       343 天前
    @kyleLin sudo xattr -r -d com.apple.quarantine /Applications/AYA.app
    lovestudykid
        15
    lovestudykid  
       343 天前   1
    可以参考下这个,adb 都是自己实现的,纯 web
    https://app.tangoapp.dev/
    lovestudykid
        17
    lovestudykid  
       343 天前
    @karlxu 你可以问作者,我试用过没问题
    superkeke
        18
    superkeke  
       343 天前
    觉得有用,麻烦给个 mac x86_64 的版本吧,老电脑还在服役~
    superkeke
        19
    superkeke  
       343 天前
    @superkeke 感谢
    context1997
        20
    context1997  
       343 天前
    win10 双击打开 无反应。。任务管理器可以看到进程,需要关闭 AS ?
    lisxour
        21
    lisxour  
       343 天前
    你还不如做个多控程序呢,说不定还能卖出去
    lizhenda
        22
    lizhenda  
       343 天前
    很厉害啊,感觉开发这个工作量不小啊,不说进程表格,日志、Shell 等模块是用了第三方库做的吗?
    liulicaixiao
        23
    liulicaixiao  
       343 天前
    https://github.com/yume-chan/ya-webadb
    跟这个很像啊,不过你多了对系统资源的监控,我前几天一直找没找到你这样的。系统资源监控是用 dumpsys 实现的吗
    garywill
        24
    garywill  
       343 天前
    @lovestudykid @liulicaixiao
    tangoadb 和 ya-webadb 就是同一个人搞的吧。他那个功能看很不错的,但他那是自己用 js 实现的 adb , 嗯这... ... 他那个是 web app 顺便做下桌面, 而我们楼主的这个本就是桌面 electron app, 私以为当然是直接调用真 adb+真 scrcpy 更香~
    hanggoing
        25
    hanggoing  
       342 天前
    FPS 数据是怎么抓取到的,准确吗,可以导出吗。感觉可以用来测试游戏帧率?
    surunzi
        26
    surunzi  
    OP
       342 天前
    @lizhenda 除了 shell 外其它都是自己从头撸的:)
    surunzi
        27
    surunzi  
    OP
       342 天前   1
    @OliverLee 用 dumpsys SurfaceFlinger 拿到的数据,初步看是能正确反映帧率,误差多大就不清楚了。后续有计划增加录制导出数据的功能。
    surunzi
        28
    surunzi  
    OP
       332 天前   1
    @calloc 已支持 AppImage 格式
    surunzi
        29
    surunzi  
    OP
       314 天前   1
    @lx0758 0.4.0 版本终端已支持多个标签,断线后可以右键重连。
    surunzi
        30
    surunzi  
    OP
       296 天前
    @tool2dx scrcpy 已集成,不过目前暂不支持虚拟窗口
    surunzi
        31
    surunzi  
    OP
       296 天前
    @cd605426287 这个 bug 在最新版应该已经修复了
    7gugu
        32
    7gugu  
       239 天前
    很有用的工具,另外提一个小建议:建议把“sudo xattr -r -d com.apple.quarantine /Applications/AYA.app”这个也放到 README 中,不然会让第一次使用的人一头雾水。
    surunzi
        33
    surunzi  
    OP
       224 天前
    @superkeke 1.7.0 版本已支持 mac intel 芯片。
    superkeke
        34
    superkeke  
       220 天前
    @surunzi #33 感谢,已 star
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     956 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 22:30 PVG 06:30 LAX 14:30 JFK 17:30
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86