前言¶
在 DSH 里用 dsh-pet 养桌宠时,宠物通常只出现在 Web 页面里:关掉标签或切到别的应用,就看不到、也摸不到。若希望同一只宠物在安卓桌面上以透明悬浮窗常驻,并与页面里的动作、气泡、显示状态和尺寸保持一致,还需要额外接一层手机端能力。下面介绍社区插件 dsh-pet-mobile(维护者 LiGoHi,GitHub:LiGoHi/dsh-pet-mobile):它在 dsh web 启动时自动维护页面补丁、托管桌面端静态资源,并配合壳 App 在手机上开窗养宠。
这是什么¶
dsh-pet-mobile 是 dsh-pet 的手机端补丁插件(当前 package 版本 0.6.0,MIT 许可证)。它不改变 DSH 核心,而是在已安装 dsh-pet 的前提下,把桌面端页面与动画通过本地 HTTP 供出,并启动本地助手;安卓用户再安装一次轻量壳 APK,即可用系统悬浮窗显示同一只宠物。页面端需要的几处客户端 bundle 补丁由插件在每次 dsh web 启动时自动、幂等地重打;dsh-pet 升级覆盖 bundle 后,下次启动会重新打补丁。
核心功能¶
页面补丁(自动、幂等)¶
插件给 dsh-pet 的客户端 bundle 打四处小补丁:自播动画外播、对话网络重试、页面「显示位置」兜底、尺寸上报。打不上时只告警,不会写坏文件;状态可通过工作区内的 .patch-status.json 查看(hasHook、hasEndpointFallback 应为 true)。
注入助手¶
随 dsh web 起停本地助手,监听 127.0.0.1:8099。桌面宠物投递的文字由页面侧写入输入框并发送;健康检查返回 {"ok":true}。
静态托管¶
将桌面端页面与 106 段动画通过 /pet-desktop/* 路径供出(例如 127.0.0.1:36717/pet-desktop/pet.html),壳 App 只负责加载页面并显示悬浮窗。
壳 APK 分发¶
插件把约 53KB 的壳 APK 落到 Download/DSHA/DSHAPetShell.apk 并发出通知,引导用户手动安装(Android 不允许静默安装)。
安装与启用¶
插件面向 web profile,安装后必须重启 dsh web,补丁与托管才会执行。
dsh plugin --profile web add github:LiGoHi/dsh-pet-mobile
依赖关系:peerDependencies 要求 dsh-pet >= 0.3.0(可选);运行环境 Node >= 20。package 中声明与 DSH 0.2.1-rc.2 兼容。
安卓壳(必须手动装一次)¶
- 装完插件并重启
dsh web后,通知栏会出现「桌面宠物:还差一步」。 - 打开文件管理,进入
Download/DSHA/DSHAPetShell.apk,安装(首次需允许「未知来源」)。 - 打开「DSHA 宠物」,授予「显示在其他应用上层」权限;之后打开 App 即可自动出现悬浮窗。
验证¶
在 dsh web 已运行的机器上,可用下面命令做基本自检:
curl -s 127.0.0.1:8099/health
应看到 {"ok":true}。
curl -s -o /dev/null -w "%{http_code}\n" 127.0.0.1:36717/pet-desktop/pet.html
HTTP 状态码应为 200。
cat .patch-status.json
确认 hasHook、hasEndpointFallback 为 true。
适用场景与注意¶
适合谁:已在 DSH web 环境使用 dsh-pet、希望在安卓手机上用悬浮窗养同一只宠物,并需要桌面输入内容进入 DSH 会话的开发者。
权限与行为:
- 悬浮窗需要
SYSTEM_ALERT_WINDOW,且会覆盖在所有应用之上,安装前应理解壳 App 与插件源码(MIT)。 - 页面在后台时 WebView 会暂停,投递的消息会积在收件箱,切回前台再发送。
- 位置不跨端同步(两端坐标系不同),只同步动作、气泡、显隐与尺寸。
- 依赖 dsh-pet 的公开契约(
/config、/state、/anim、/pet-display);上游大改时补丁可能跳过并告警。
DSH 生态采用「一切皆插件」思路;社区目录页 skillhub.cn 上的 dsh-pet-mobile 为独立站点条目,与 DeepSeek / 幻方无官方从属关系。插件以当前 dsh web 进程权限运行,安装前请自行审阅 GitHub 仓库 源码与许可证。
结尾¶
dsh-pet-mobile 把 dsh-pet 的桌面体验延伸到安卓悬浮窗:自动维护页面补丁、本地托管 /pet-desktop/*、8099 助手与壳 APK 分发,并与页面宠物在动作与气泡等方面双向同步。需要手机桌宠时,按官方命令安装 web 插件、重启 dsh web、再装一次壳即可起步。
- 目录页:https://www.skillhub.cn/plugins/LiGoHi/dsh-pet-mobile
- GitHub:https://github.com/LiGoHi/dsh-pet-mobile