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

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

  •  
  •   surunzi · 3 天前 · 1933 次点击

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

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

    https://github.com/liriliri/aya

    应用管理:

    application

    进程管理:

    process

    终端:

    shell

    Logcat:

    logcat

    性能监控:

    performance

    27 条回复    2024-12-20 17:56:31 +08:00
    tool2dx
        1
    tool2dx  
       3 天前 via Android   ❤️ 3
    ADB 界面能整那么花哨,不亏是专业前端。

    可以考虑整合一下 scrcpy ,最近这软件加了一个很 cool 的功能,就是给每一个 APP 独立建一个窗口串流,一个手机能同时多开好多个 APP ,完美满足了我对安卓桌面多任务窗口化的需求。
    garywill
        2
    garywill  
       3 天前
    好耶,感觉正缺少这样的 app
    surunzi
        3
    surunzi  
    OP
       3 天前
    @tool2dx 远程操控是打算基于 scrcpy 的,不过作为 android 半吊子,要研究下它的协议实现相比其它功能感觉更花时间的样子,所以打算放在最后面实现。
    calloc
        4
    calloc  
       3 天前 via Android   ❤️ 1
    计划支持 linux 吗
    lloovve
        5
    lloovve  
       3 天前 via iPhone
    太需要独立的 logcat 了
    lloovve
        6
    lloovve  
       3 天前 via iPhone
    @tool2dx 具体说一下,需要系统支持分屏么?
    hwb
        7
    hwb  
       3 天前
    可以搭配这个,直接无线
    https://github.com/wb-hwang/AutoWifiDebugHelper
    lx0758
        8
    lx0758  
       3 天前
    可以可以, 爱了爱了
    tool2dx
        9
    tool2dx  
       3 天前
    @lloovve 感觉安卓 11 以上都能用,我在安卓 tv 上用了 scrcpy virtual display ,系统不带分屏,也没问题。
    lx0758
        10
    lx0758  
       3 天前
    提点小建议呢...
    1. 终端 exit 了之后不知道怎么再开一个
    2. 能不能支持多个终端标签
    surunzi
        11
    surunzi  
    OP
       2 天前
    @calloc 可能出正式版后才会考虑支持
    surunzi
        12
    surunzi  
    OP
       2 天前
    @lx0758 可以的,后续优化下
    kyleLin
        13
    kyleLin  
       2 天前
    macos 下载打开之后提示镜像损坏了。
    surunzi
        14
    surunzi  
    OP
       2 天前
    @kyleLin sudo xattr -r -d com.apple.quarantine /Applications/AYA.app
    lovestudykid
        15
    lovestudykid  
       2 天前   ❤️ 1
    可以参考下这个,adb 都是自己实现的,纯 web
    https://app.tangoapp.dev/
    lovestudykid
        17
    lovestudykid  
       2 天前
    @karlxu 你可以问作者,我试用过没问题
    superkeke
        18
    superkeke  
       2 天前
    觉得有用,麻烦给个 mac x86_64 的版本吧,老电脑还在服役~
    superkeke
        19
    superkeke  
       2 天前
    @superkeke 感谢
    cd605426287
        20
    cd605426287  
       2 天前
    win10 双击打开 无反应。。任务管理器可以看到进程,需要关闭 AS ?
    lisxour
        21
    lisxour  
       2 天前
    你还不如做个多控程序呢,说不定还能卖出去
    lizhenda
        22
    lizhenda  
       2 天前
    很厉害啊,感觉开发这个工作量不小啊,不说进程表格,日志、Shell 等模块是用了第三方库做的吗?
    liulicaixiao
        23
    liulicaixiao  
       2 天前
    https://github.com/yume-chan/ya-webadb
    跟这个很像啊,不过你多了对系统资源的监控,我前几天一直找没找到你这样的。系统资源监控是用 dumpsys 实现的吗
    garywill
        24
    garywill  
       2 天前
    @lovestudykid @liulicaixiao
    tangoadb 和 ya-webadb 就是同一个人搞的吧。他那个功能看很不错的,但他那是自己用 js 实现的 adb , 嗯这... ... 他那个是 web app 顺便做下桌面, 而我们楼主的这个本就是桌面 electron app, 私以为当然是直接调用真 adb+真 scrcpy 更香~
    OliverLee
        25
    OliverLee  
       1 天前
    FPS 数据是怎么抓取到的,准确吗,可以导出吗。感觉可以用来测试游戏帧率?
    surunzi
        26
    surunzi  
    OP
       1 天前
    @lizhenda 除了 shell 外其它都是自己从头撸的:)
    surunzi
        27
    surunzi  
    OP
       1 天前
    @OliverLee 用 dumpsys SurfaceFlinger 拿到的数据,初步看是能正确反映帧率,误差多大就不清楚了。后续有计划增加录制导出数据的功能。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2157 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 01:31 · PVG 09:31 · LAX 17:31 · JFK 20:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.