【免费下载链接】DocumentServer
Euro-Office DocumentServer 是一款开源的在线办公文档协作服务端(支持文档、表格、演示文稿的网页编辑)。在开发调试时,桌面浏览器通过localhost就能打开编辑器,但Android 模拟器和局域网里的手机却无法访问它——这正是make mobile要解决的问题。本指南带你用一条命令完成跨设备文档编辑测试:自动探测宿主机局域网 IP、配置可访问的编辑地址,并附 Playwright 移动端自动化冒烟测试的玩法。
为什么 localhost 不够用:跨设备测试的核心痛点
make local(等价于直接make)启动的栈只在http://localhost:8081/上可用,桌面浏览器和 iOS 模拟器够用,但两类常见客户端会"失联":
- Android 模拟器:它运行在独立虚拟网络里,
localhost指向模拟器自己,必须用http://10.0.2.2这个特殊地址才能访问宿主机; - 局域网真机(手机/平板):必须使用宿主机的局域网 IP,而 Nextcloud 侧的
DocumentServerUrl和trusted_domains也要同步指向这个 IP,编辑器才能被手机端真正打开。
手动改这些配置繁琐且容易漏项,make mobile就是把这套流程自动化了。
make mobile 三步快速上手
前置条件:已安装 Docker,并已完成仓库克隆与构建用户配置(参考 develop/README.md 开头的 Build Requisites 说明)。以下命令均在
develop/目录中执行。
第 1 步:拉取预构建开发镜像并启动
make pull多架构(amd64 + arm64)的:latest-dev镜像已预装好文档服务与 Nextcloud 连接器,无需本地完整构建。
第 2 步:以 mobile 模式启动(核心命令)
make mobile它会做三件事(对应 develop/Makefile 中的mobile目标):
- 自动探测宿主机局域网 IP(macOS 用
ipconfig,Linux 用ip route,见 develop/Makefile); - 设置
DocumentServerUrl = http://<你的IP>:8080/,并把该 IP 加入 Nextcloud 的trusted_domains(见refresh-urls目标,develop/Makefile); - 在启动横幅中打印出完整的 Nextcloud 访问 URL,方便直接抄到手机浏览器里。
第 3 步:在各设备打开对应地址
| 客户端 | 启动目标 | 访问地址 |
|---|---|---|
| 桌面浏览器 | make local/make mobile | http://localhost:8081/ |
| iOS 模拟器 | make local/make mobile | http://localhost:8081/ |
| Android 模拟器 | make mobile/make next-mobile | http://10.0.2.2:8081/ |
| 局域网真机 | make mobile/make next-mobile | http://<宿主机IP>:8081/ |
打开 Files 应用,新建一个 docx 文档点开,即可在手机或模拟器上验证文档、表格、演示文稿的移动端编辑效果 📱。
两个实用技巧:IP 变了和探测失败怎么办
技巧 1:局域网 IP 变化(换 WiFi、开热点等)
不用重新构建,直接刷新 URL 即可:
make refresh-urls该操作是幂等的,会把DocumentServerUrl与trusted_domains重新对齐到当前模式(develop/README.md 的 Testing from mobile devices and emulators 一节)。在local与mobile模式之间来回切换也完全支持,每次运行都会重新应用正确的地址。
技巧 2:自动探测失败时手动指定 IP
在 Windows 原生环境或任何探测失败的场景,直接传参覆盖:
make mobile HOST_LAN_IP=192.168.1.50进阶:用 make next-mobile 测试未发布的 Nextcloud 分支
如果你在验证 Nextcloud 的未发布版本(master、stable33、stable34),桌面用make next,手机端则改用make next-mobile,它等价于next+ 自动注入局域网 IP:
make next-mobile # mobile + NC master 开发主干 make next-mobile NC_BRANCH=stable34 # mobile + NC34 稳定分支每个分支拥有独立的数据卷,切换分支不会互相污染(develop/Makefile)。
自动化验证:Playwright 移动端冒烟测试
真机测试之外,项目内置了 Playwright 端到端测试,无需手机即可验证移动端构建是否正常渲染。核心用例在 e2e/tests/mobile-editor.spec.ts:
- 通过 URL 参数
?type=mobile强制加载移动端 bundle(绕过 UA 嗅探),覆盖 Document(docx)、Spreadsheet(xlsx)、Presentation(pptx)三种编辑器; - 模拟 414×896 的手机视口,断言"加载骨架屏消失 → 无错误弹窗 → 编辑画布可见 → 全程无 JS 异常",专门拦截"部署成功但运行时报错"这类隐蔽问题;
- 运行入口在 e2e/package.json,测试基础设施配置见 e2e/playwright.config.ts(失败自动截图、首次重试录制 trace 与视频)。
global-setup.ts 还会自动拉起一个 Docker 文档服务容器并轮询健康检查,跑之前什么都不用准备:
cd e2e npm install npm test常见问题 FAQ
Q1:make mobile和make local有什么区别?local跑在localhost,只服务桌面浏览器与 iOS 模拟器;mobile额外注入局域网 IP,让 Android 模拟器与局域网真机也能打开编辑器。两者可在同一栈上随时切换。
Q2:横幅里的 Nextcloud URL 打不开?先确认手机与宿主机在同一局域网;再检查宿主机防火墙是否放行了 8081 端口。IP 变化时执行make refresh-urls。
Q3:启动时提示 Nextcloud 数据版本落后?说明本地镜像落后于数据卷,按提示执行docker pull nextcloud:latest后重新make即可(检测逻辑见 develop/Makefile)。
Q4:想完全重置 Nextcloud 数据?
make wipe-nc # 清除 nc_data_latest make wipe-nc NC_VERSION=33 # 清除指定版本的数据卷小结
| 场景 | 命令 |
|---|---|
| 桌面浏览器日常开发 | make local |
| Android 模拟器 / 局域网真机 | make mobile |
| 测试未发布 Nextcloud 分支(手机端) | make next-mobile NC_BRANCH=stable34 |
| 局域网 IP 变化后热更新 | make refresh-urls |
| 无真机时的移动端自动化冒烟 | cd e2e && npm test |
掌握make mobile后,你的文档协作服务就能在开发机上一次启动、多端访问,跨设备文档编辑测试从此只需一条命令 ✅。
【免费下载链接】DocumentServer
相关推荐
3个关键优化让Windows性能飙升:AtlasOS完整配置指南
3个关键优化让Windows性能飙升:AtlasOS完整配置指南 你是否厌倦了Windows系统臃肿缓慢的体验?想要一个更流畅、更私密、更高效的操作系统?Atl
操作系统隐私合规精通Euro-Office DocumentServer组件级增量构建:web-apps、sdkjs、core与server的make目标实战
精通Euro Office DocumentServer组件级增量构建:web apps、sdkjs、core与server的make目标实战 Document
OpenResume设备测试策略:模拟器与真实设备结合
OpenResume设备测试策略:模拟器与真实设备结合 你是否曾遇到过这样的尴尬:精心制作的简历在电脑上看起来完美无瑕,发送给招聘方后却发现格式错乱、字体显示异
前端
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考