俺正在 mac 上打王者:用 Scrcpy Mask 像模拟器一样用鼠标键盘控制 Android 设备,基于 Rust & Tarui 开发的跨平台客户端 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
ruchuby
V2EX    分享创造

俺正在 mac 上打王者:用 Scrcpy Mask 像模拟器一样用鼠标键盘控制 Android 设备,基于 Rust & Tarui 开发的跨平台客户端

  •  1
     
  •   ruchuby 2024-05-06 09:26:51 +08:00 3606 次点击
    这是一个创建于 555 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Scrcpy-mask

    为了实现电脑控制安卓设备,本人使用 Tarui + Vue 3 + Rust 开发了一款跨平台桌面客户端。该客户端能够提供可视化的鼠标和键盘按键映射配置。通过按键映射实现了实现类似安卓模拟器的多点触控操作,具有毫秒级响应速度。该工具可广泛用于电脑控制安卓设备玩手游等等,提供流畅的触控体验。

    仅实现了 Scrcpy 控制协议,不提供投屏功能。因为投屏会存在延迟和模糊问题,本项目另辟蹊径,直接放弃投屏,而使用透明的蒙版显示窗口背后的内容(可以使用 AVD 、手机自带低延迟投屏界面等),从根本上杜绝了投屏延迟的现象。

    项目地址

    Features

    • Wired and wireless connections to Android devices
    • Start scrcpy-server and connect to it
    • Implement scrcpy client control protocol
    • Mouse and keyboard key mapping
    • Visually setting the mapping
    • Key mapping config import and export
    • Update check
    • Switch between key mapping and raw input
    • Better macro support
    • Provide external interface through websocket

    Demonstration video

    Screenshot

    • Device control

    • Key mapping setting

    • Mask above game

    20 条回复    2024-05-07 11:39:19 +08:00
    smallboy19991231
        1
    smallboy19991231  
       2024-05-06 10:22:16 +08:00
    和果自的 air 投屏比有什?我用投屏打 lol 手好像也是不的
    jdjingdian
        2
    jdjingdian  
       2024-05-06 10:43:08 +08:00
    大概明白做这个玩意的原因了。因为网易 mumu 收费,虽然商业公司收费很正常,但是 mumu windows 免费,mac 收费,而且个人觉得还不便宜

    老哥牛逼
    ruchuby
        3
    ruchuby  
    OP
       2024-05-06 10:44:14 +08:00
    @smallboy19991231 没有用过 air 投屏,不太了解。至少本项目是开源的,以后可能会提供外部接口
    ruchuby
        4
    ruchuby  
    OP
       2024-05-06 10:49:06 +08:00
    @jdjingdian mumu pro 的按键方案我也不习惯,我都是用雷电那一套的。而且目前最大的问题是用 mumu pro 玩会封号。
    diivL
        5
    diivL  
       2024-05-06 10:52:17 +08:00
    服务端开源吗?
    ruchuby
        6
    ruchuby  
    OP
       2024-05-06 11:06:51 +08:00
    @diivL 服务端是别人的开源项目,scrcpy
    nenseso
        7
    nenseso  
       2024-05-06 11:28:24 +08:00
    scrcpy 好像用的 ffmpeg ,挺吃软解性能的
    ruchuby
        8
    ruchuby  
    OP
       2024-05-06 11:38:44 +08:00 via Android
    @nenseso 哈哈哈本项目不管投屏,只负责控制。用透明蒙版展示窗口后内容,用户自己解决投屏方式或者直接用模拟器
    oott123
        9
    oott123  
       2024-05-06 11:52:55 +08:00
    非常好的东西,我之前也想做一个用来玩原神来着,没想到有人做了,赞

    不过设置热键的时候,有些特殊键设置不了,比如 F3 ,会变成在当前页面内查找……
    oott123
        10
    oott123  
       2024-05-06 11:53:46 +08:00
    哦,对,以及 Windows 的话,除了 adb.exe ,还需要 AdbWinUsbApi.dll 和 AdbWinApi.dll 两个文件放在 adb.exe 旁边,否则是启动不了的
    wujianhua22
        11
    wujianhua22  
       2024-05-06 11:55:08 +08:00
    感觉 qt scrcpy 也能实现啊
    ruchuby
        12
    ruchuby  
    OP
       2024-05-06 12:09:23 +08:00
    @oott123 我是直接用命令行的方式调用 adb 的,应该不用额外 dll 吧,如果显示连接超时,多试一下就可以了。
    对于 F3 之类特殊按键,我要看看 Tauri 是否有相关方式可以禁用 WebView 的自带快捷键
    oott123
        13
    oott123  
       2024-05-06 12:14:50 +08:00
    @ruchuby

    虽然你不需要 dll ,但是 adb.exe 需要呀。
    ruchuby
        14
    ruchuby  
    OP
       2024-05-06 12:40:21 +08:00 via Android
    @oott123 这样嘛,应该是我系统装了开发套件所以有相关 dll ,那我之后补充一下
    anoninz
        15
    anoninz  
       2024-05-06 14:58:51 +08:00
    请问支持手柄吗?
    ruchuby
        16
    ruchuby  
    OP
       2024-05-06 15:10:36 +08:00 via Android
    @anoninz 目前还没做,但在计划内
    chouyee
        17
    chouyee  
       2024-05-06 17:28:39 +08:00
    打开了任何来源,但是双击还是已损坏,无法打开
    ruchuby
        18
    ruchuby  
    OP
       2024-05-06 18:12:42 +08:00 via Android
    @chouyee 是否安装错了版本呢,不应该存在损坏的问题
    llbqwhtxi
        19
    llbqwhtxi  
       2024-05-07 10:33:03 +08:00
    好像解决不了我菜这个问题
    ruchuby
        20
    ruchuby  
    OP
       2024-05-07 11:39:19 +08:00
    有人反馈说 intel 芯片 mac 无法启动,但本人没有 intel 芯片的 mac 。不知道哪位兄弟能帮忙测试一下,看看是否有错误信息。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2965 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 12:51 PVG 20:51 LAX 04:51 JFK 07:51
    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