# 模拟器操作模块 **Repository Path**: fjcq/ZsEmuLib ## Basic Information - **Project Name**: 模拟器操作模块 - **Description**: 易语言模拟器操作模块,支持:雷电模拟器、雷神模拟器、MuMu模拟器等等、同时内部的adb类也可以控制其他开启adb调试的所有安卓设备。 - **Primary Language**: 易语言 - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 10 - **Forks**: 5 - **Created**: 2024-10-14 - **Last Updated**: 2026-07-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: 雷电模拟器, 雷神模拟器, MuMu模拟器, 易语言, ADB ## README # 雷神模拟器操作模块 [![Gitee](https://img.shields.io/badge/Gitee-项目主页-orange?logo=gitee)](https://gitee.com/fjcq/ZsEmuLib) [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE) [![Release](https://img.shields.io/badge/release-v1.75.0.0-blue)](CHANGELOG.md) > ## 兼容雷电模拟器、雷神模拟器、MuMu模拟器,统一操作接口,助力开发与测试 --- ## 目录 - 📖 [模块简介](#模块简介) - 📦 [类模块说明](#类模块说明) - 🛠️ [兼容性说明](#️兼容性说明) - 🌐 [仓库链接](#仓库链接) - 📝 [更新日志](#更新日志) --- ## 📖模块简介 本模块虽然名为**雷神模拟器操作模块**,但它兼容以下模拟器的所有操作: - 雷电模拟器 - 雷神模拟器 - MuMu模拟器 > 由于开发时间较长,为了兼容现有代码,模块名称及内部类模块名称保持不变。 --- ## 📦类模块说明 ### 雷神 adb 操作 ✅ 兼容所有安卓设备,包括: - 各类安卓模拟器 - 安卓真机设备 **主要功能**: - 提供完整的ADB命令封装 - 支持文件上传、下载和管理 - 应用安装、卸载和管理 - 设备控制(重启、关机、截图等) - 系统信息获取 - 自定义服务启动和管理 ### 雷神 lsconsole 操作 🔹 仅适用于: - 雷电模拟器(2.0及以上版本,包括雷电14) - 雷神模拟器 **主要功能**: - 模拟器实例管理(启动、停止、新建、克隆) - 模拟器配置修改 - 窗口管理(位置、尺寸调整) - 性能参数设置 ### 雷神 ls 操作 🔹 仅适用于: - 雷电模拟器(2.0及以上版本,包括雷电14) - 雷神模拟器 **主要功能**: - 获取模拟器详细信息 - 运行状态监控 - 配置参数查询 - 模拟器列表管理 ### MuMu 管理器 🔸 仅适用于: - MuMu模拟器12(4.0.0及以上版本) - MuMu模拟器5(5.0.0及以上版本) **主要功能**: - 模拟器连接与断开 - 增强截图功能 - 文本输入(支持Unicode) - 按键模拟 - 多点触控支持 - 应用显示标识获取 --- ## 🛠️兼容性说明 本模块为开发者提供统一的操作接口,便于在不同模拟器平台上开发和测试。 > 虽然模块名称保留`雷神`字样,但功能已扩展至多个模拟器品牌,确保广泛兼容与实用性。 --- ## 🌐仓库链接 项目代码和文档托管于Gitee: [👉 止水/模拟器操作模块](https://gitee.com/fjcq/ZsEmuLib) --- ## 📝更新日志 ### v1.77.0.0 (2026-07-20) #### 新增 - 新增 `类_命名管道` 以命名管道 + 异步 I/O 实现的进程管理类,stdout 与 stderr 独立分流,支持超时控制与 UTF-8/ANSI 编码自动检测 - 新增 `取终端路径()` 查找终端可执行文件绝对路径,支持 cmd.exe / powershell.exe / pwsh.exe,留空默认 cmd.exe - 新增 `取终端返回_字节集_命名管道()` 基于命名管道 + 异步 I/O 实现,stdout 与 stderr 独立返回,即时回显响应更快,多命令并发互不干扰 - 新增 `置终端全局设置()` 统一设置终端命令的全局超时时间、默认终端、默认管道模式和调试输出,各参数均可空;原 `置DOS全局超时()`、`置默认终端()`、`DOS调试()` 已合并入本命令 #### 优化 - 优化 `M_取安装目录()` 与 `M_取工作目录()` 新增"运行进程 → 注册表 → install_config.json"三级优先检测链,在配置文件丢失、路径变更或未注册配置时仍能自动定位 MuMu 模拟器 - 优化 `M_启动模拟器()` / `M_关闭模拟器()` / `M_取adb端口()` 与 `雷神adb操作.指定adb()` / `是否为MuMu模拟器()` 智能选择 `mumu-cli.exe`(新版命名)或 `MuMuManager.exe`(旧版命名),新旧版本模拟器均兼容 ##### 终端操作 - 重命名 DOS 系列子程序为终端命名:`取DOS返回` → `取终端返回`、`取DOS返回_字节集` → `取终端返回_字节集`、`取DOS全局超时` → `取终端全局超时`;旧名保留为兼容跳转子程序 - 优化 `取终端返回()` / `取终端返回_字节集()` 新增 `是否命名管道` 参数,启用后使用命名管道执行,留空时回退到全局设置 - 优化 `取终端返回_字节集()` 超时终止整个进程树(含孙子进程)、消除 PowerShell 进度条干扰、输出编码自动检测避免乱码、命令行与终端路径长度前置校验 ##### 类_匿名管道 - 优化 `启动()` / `停止()` 路径自动定位系统目录、停止时通过 Job Object 终止整个进程树 - 优化 `读()` 新增超时参数与 UTF-8/ANSI 编码自动检测,预分配缓冲区提升大输出吞吐量 #### 修复 - 修复 `雷神adb操作.上传文件()` / `下载文件()` 在部分环境下因 stdout 解析异常导致成功判断不准的问题,避免实际成功却误报失败 - 修复 `取默认终端()` 在 PowerShell 7 不可用时返回相对路径 `"\cmd.exe"` 的问题,现动态获取系统目录拼接绝对路径 - 修复 `类_匿名管道` 多处缺陷:宽文本模式 UTF-8 分块转换导致中文乱码、进程ID复用误判运行状态、stdin 写端误关闭、句柄泄漏及强制终止未等待进程退出 --- 查看更多历史更新,请查阅[CHANGELOG.md](CHANGELOG.md)。 --- ## 🤝贡献指南 ### 提交问题 如果您在使用过程中遇到问题或有改进建议,欢迎通过以下方式提交: 1. **Gitee Issues**:[提交问题](https://gitee.com/fjcq/ZsEmuLib/issues) 2. **详细描述**:请提供完整的错误信息、操作系统版本、模拟器类型和版本、复现步骤 ### 代码贡献 1. Fork 本仓库 2. 创建您的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启一个 Pull Request ### 代码规范 - 遵循易语言代码规范 - 函数命名使用中文,清晰易懂 - 关键代码添加注释说明 - 确保向后兼容 --- ## 📞联系方式 ### 作者信息 - **作者**:止水 - **Gitee**:[fjcq](https://gitee.com/fjcq) - **项目主页**:[止水/模拟器操作模块](https://gitee.com/fjcq/ZsEmuLib) ### 反馈渠道 - **技术交流**:QQ群 168746446 --- 查看更多历史更新,请查阅[CHANGELOG.md](CHANGELOG.md)。